当前位置: 首页 > news >正文

问题 B: 分牌

题目描述

有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若干张纸牌,然后移动。

        移牌规则为:在编号为 1 堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 N 的堆上取的纸牌,只能移到编号为 N-1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。

        现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。

例如 N=4,4 堆纸牌数分别为:  ① 9 ② 8 ③ 17 ④ 6

        移动3次可达到目的:

        从 ③ 取4张牌放到④(9 8 13 10)->从③取3张牌放到 ②(9 11 10 10)-> 从②取1张牌放到①(10 10 10 10)。

输入

N(N 堆纸牌,1 <= N <= 100)

 A1 A2 … An (N 堆纸牌,每堆纸牌初始数,l<= Ai <=10000)

输出

所有堆均达到相等时的最少移动次数。

样例输入 Copy
4
9 8 17 6 
样例输出 Copy
3

问题分析

计算每堆纸牌与平均数的差值,然后在相邻的纸牌堆之间进行调整,从而使得每堆纸牌的数量达到平均数。

如果某堆纸牌在达到平均数之前需要移动纸牌,那么就增加移动次数。

#include <bits/stdc++.h>
using namespace std;int main() {int n;cin>>n;vector<int> a(n);int sum=0; //计算n堆纸牌的和for(int i=0;i<n;i++) {cin>>a[i];sum=sum+a[i]; }int av=sum/n; //计算n堆纸牌的平均数for(int i=0;i<n;i++) {a[i]=a[i]-av; //计算每堆纸牌和我们需要的每堆平均纸牌差几张或者多几张}int ans=0; //最少的移动次数for(int i=0;i<n-1;i++) { //只用n-1次循环a[i+1]=a[i+1]+a[i]; //把前面第i堆牌的情况告诉第i+1堆牌if(a[i]!=0) { //如果当前的牌和平均纸牌数有偏差ans=ans+1; //说明这里肯定要进行移动}}cout<<ans; //输出最少的移动次数
}

相关文章:

问题 B: 分牌

题目描述 有 N 堆纸牌&#xff0c;编号分别为 1&#xff0c;2&#xff0c;…, N。每堆上有若干张&#xff0c;但纸牌总数必为 N 的倍数。可以在任一堆上取若干张纸牌&#xff0c;然后移动。 移牌规则为&#xff1a;在编号为 1 堆上取的纸牌&#xff0c;只能移到编号为 2 的堆上…...

3元一平方公里的在线卫星影像

我们为大家分享了免费下载卫星影像的方法。 但让人遗憾的是&#xff0c;该影像的最高分辨率只有10米&#xff0c;需要更高清且比较新的卫星影像&#xff0c;看来还是得付费购买才比较靠谱。 自助选择区县范围 商业卫星影像主要面向企事业单位&#xff0c;一般来讲都比较贵&a…...

只会用 xxl-job?更强大的新一代分布式任务调度框架来了!

前言 PowerJob是新一代分布式任务调度与计算框架&#xff0c;支持CRON、API、固定频率、固定延迟等调度策略&#xff0c;提供工作流来编排任务解决依赖关系&#xff0c;能让您轻松完成作业的调度与繁杂任务的分布式计算。 文章来源&#xff1a;https://blog.csdn.net/LY_624/…...

LeetCode-无重复字符的最长子串(3)

题目描述&#xff1a; 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 代码&#xff1a; class Solution {public int lengthOfLongestSubstring(String s) {Set<Character> occnew HashSet<Character>();int lens.length();int…...

【C#】知识点实践序列之Lock简单解决并发引起数据重复问题

欢迎来到《小5讲堂之知识点实践序列》文章&#xff0c;大家好&#xff0c;我是全栈小5。 这是2024年第3篇文章&#xff0c;此篇文章是C#知识点实践序列文章&#xff0c;博主能力有限&#xff0c;理解水平有限&#xff0c;若有不对之处望指正&#xff01; 本篇在Lock锁定代码块基…...

NLP基础——TF-IDF

TF-IDF TF-IDF全称为“Term Frequency-Inverse Document Frequency”&#xff0c;是一种用于信息检索与文本挖掘的常用加权技术。该方法用于评估一个词语&#xff08;word&#xff09;对于一个文件集&#xff08;document&#xff09;或一个语料库中的其中一份文件的重要程度。…...

kubernetes(四)

文章目录 1. 持久化存储1.1 HostPath1.2 NFS1.3 PV和PVC 1. 持久化存储 1.1 HostPath hostpath&#xff1a;多个容器共享数据&#xff0c;不能跨宿主机&#xff0c;如果宿主机挂了&#xff0c;在其他宿主机上起pod&#xff0c;那么之前的数据就没有了 spec:nodeName: 10.0.0…...

安科瑞变电站综合自动化系统在青岛海洋科技园应用——安科瑞 顾烊宇

摘 要&#xff1a;变电站综合自动化系统是将变电站内的二次设备经过功能的组合和优化设计&#xff0c;利用先进的计算机技术、通信技术、信号处理技术&#xff0c;实现对全变电站的主要设备和输、配电线路的自动监视、测量、控制、保护、并与上级调度通信的综合性自动化功能。 …...

紫光展锐5G扬帆出海 | 欧洲积极拥抱更多5G选择

和我国一样&#xff0c;欧洲不少国家也在2019年进入5G商用元年&#xff1a;英国在2019年5月推出了5G商用服务&#xff0c;该国最大的移动运营商EE(Everything Everywhere)最先商用5G&#xff1b;德国在2019年年中推出5G商用服务&#xff0c;德国电信、沃达丰和 Telefonica是首批…...

Open3D聚类算法

按照官网的例子使用聚类&#xff0c;发现结果是全黑的。 经过多次测试发现 eps3.3, min_points1这里是关键 min_points必须等于1否则无效果 import time import open3d as o3d; import numpy as np; import matplotlib.pyplot as plt#坐标 mesh_coord_frame o3d.geometry.Tria…...

swing快速入门(三十九)进度对话框

&#x1f381;注释很详细&#xff0c;直接上代码 &#x1f9e7;新增内容 &#x1f9e8;1.模拟耗时操作 &#x1f9e8;2.使用计时器更新进度对话框 &#x1f380;源码&#xff1a; package swing31_40;import javax.swing.*; import java.awt.event.ActionEvent; import java.aw…...

Oracle-存储过程

简介 存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集&#xff0c;它大大提高了SQL语句的功能和灵活性。存储过程编译后存储在数据库中&#xff0c;所以执行存储过程比执行存储过程中封装的SQL语句更有效率。 语法 存储过程: 一组为了完成某种特定功能的sql语句…...

L1-085:试试手气

我们知道一个骰子有 6 个面&#xff0c;分别刻了 1 到 6 个点。下面给你 6 个骰子的初始状态&#xff0c;即它们朝上一面的点数&#xff0c;让你一把抓起摇出另一套结果。假设你摇骰子的手段特别精妙&#xff0c;每次摇出的结果都满足以下两个条件&#xff1a; 1、每个骰子摇出…...

nginx+keepalived实现七层负载

目录 一、部署nginx01、nginx02 二、keepalived配置&#xff08;抢占模式、master- backup模式&#xff09; 三、测试 四、非抢占模式&#xff08;backup-backup模式&#xff09; nginx01 11.0.1.31nginx0211.0.1.32虚拟IP&#xff08;VIP&#xff09;11.0.1.30 一、部署ngin…...

机器人制作开源方案 | 智能盲道除雪小车

作者&#xff1a;汪荣顺 李明旭 马晓乐 吴泽俊 李以陈 单位&#xff1a;江汉大学 指导老师&#xff1a;张朝刚 张会利 本文论述了一种新型智能盲道除雪小车的设计与研发。由于目前的除雪设备集中在公路、城市道路、机场路面、高速公路等领域&#xff0c;但对于街道等路况的研…...

Mypy: 把静态类型检查带给Python

之前我们介绍过,Python作为一门动态语言,为人诟病的缺点之一,就是难以像java那样,支持静态类型检查,这样会把一些错误带到运行中(如果你不进行单元测试的话)。 不过,随着type hint的推开,实际上现在Python已经有了比较充分的静态类型检查。这一章我们先介绍其它Lint工…...

【心得杂记】简单聊聊限制高速面阵相机性能的因素

研究了限制高速面阵相机发展的因素&#xff0c;感觉就是揭开了薄雾面纱之后的复杂。 个人观点&#xff0c;不保证全对~ 欢迎讨论~ 高速相机是一个整体&#xff0c;涉及的各个零部件和模组很多&#xff0c;每个环节都会影响相机指标的提高。 高速相机主要包括的核心部件有&#…...

金蝶Apusic应用服务器 loadTree JNDI注入漏洞

产品介绍 金蝶Apusic是一款企业级应用服务器&#xff0c;支持Java EE技术&#xff0c;适用于各种商业环境。 漏洞概述 由于金蝶Apusic应用服务器权限验证不当&#xff0c;使用较低JDK版本&#xff0c;导致攻击者可以向loadTree接口执行JNDI注入&#xff0c;远程加载恶意类&a…...

计算机毕业设计 基于SpringBoot的公司资产网站的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…...

如何获取时间戳?

获取现在的时间0时0秒 一、JavasCRIPT时间转时间戳 JavaScript获得时间戳的方法有五种&#xff0c;后四种都是通过实例化时间对象new Date() 来进一步获取当前的时间戳&#xff0c;JavaScript处理时间主要使用时间对象Date Date.now()可以获得当前的时间戳&#xff1a; con…...

Vue页面传值:Props属性与$emit事件的应用介绍

一、vue页面传值 在Vue页面中传值有多种方式&#xff0c;简单介绍以下两种 通过props属性传递值&#xff1a;父组件在子组件上定义props属性&#xff0c;子组件通过props接收父组件传递的值。通过$emit触发事件传递值&#xff1a;子组件通过$emit方法触发一个自定义事件&#…...

【mars3d】new mars3d.layer.GeoJsonLayer(实现环状面应该怎么传data

问题&#xff1a;【mars3d】new mars3d.layer.GeoJsonLayer(实现环状面应该怎么传data 解决方案&#xff1a; 1.在示例中修改showDraw()方法的data数据&#xff0c;实现以下环状面效果 2.示例链接&#xff1a; 功能示例(Vue版) | Mars3D三维可视化平台 | 火星科技 export f…...

Websocket实时更新商品信息

产品展示页面中第一次通过接口去获取数据库的列表数据 /// <summary> /// 获取指定的商品目录 /// </summary> /// <param name"pageSize"></param> /// <param name"pageIndex"></param> /// <param name"i…...

数据结构第六弹---带头双向循环链表

双向循环链表 1、带头双向循环链表概念2、带头双向循环链表的优势3、带头双向循环链表的实现3.1、头文件包含和结构定义3.2、创建新结点3.3、打印3.4、初始化3.5、销毁3.6、尾插3.7、头插3.8、头删3.9、尾删3.10、查找3.11、在pos之前插入3.12、删除pos位置3.13、判断是否为空3…...

洛谷——P1347 排序(图论-拓扑排序)

文章目录 一、题目排序题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 样例 #3样例输入 #3样例输出 #3 提示 二、题解基本思路&#xff1a;代码 一、题目 排序 题目描述 一个不同的值的升序排序数列指的是一个从左到右元素依次增大的…...

JVM内存管理

一.java程序运行过程 JDK,JRE,JVM JVM把我们的字节码翻译成机械能执行的机械码。 JRE除了包含JVM之外&#xff0c;还包含很多java的原生依赖库。 JDK除了包含JRE之外&#xff0c;还包含很多工具&#xff0c;比如javac工具。 .java文件是怎么被执行的 我们的.java文件会被…...

将 Python 和 Rust 融合在一起,为 pyQuil® 4.0 带来和谐

文章目录 前言设定方向从 Rust 库构建 Python 软件包改装 pyQuil异步困境回报&#xff1a;功能和性能结论 前言 pyQuil 一直是在 Rigetti 量子处理单元&#xff08;QPUs&#xff09;上构建和运行量子程序的基石&#xff0c;通过我们的 Quantum Cloud Services&#xff08;QCS™…...

Spring Boot应用程序中VO的理解及使用

在Spring Boot应用程序中&#xff0c;VO&#xff08;View Object&#xff09;通常用于表示视图层所需的数据&#xff0c;这些数据来自于业务逻辑层或数据访问层。VO的主要目的是将业务逻辑层的数据结构转换为视图层可以使用的数据结构&#xff0c;使得视图层可以直接使用VO中的…...

华为交换机ETH-TRUNK链路聚合lacp模式与手工模式

SW1配置如下 vlan batch 10interface Eth-Trunk1port link-type trunkport trunk allow-pass vlan 10mode lacp-static #手工模式删除改行max active-linknumber 2 #手工模式删除改行trunkport GigabitEthernet 0/0/1 to 0/0/2#配置为主设备&#xff08;修改优先级&…...

函数图像化

函数图像化 在进行模型提取时&#xff0c;往往会需要选择拟合的函数&#xff0c;因此&#xff0c;了解函数的图像对于模型拟合提取有益&#xff0c;以下是常见的一些函数的曲线 1 二次函数 常见的耳二次函数曲线&#xff0c;转换x与y数量级差异仅一个数量级&#xff0c; 2 三…...

官方网站建设有限公司/新闻联播直播 今天

通过浏览器访问互联网上的页面&#xff0c;实际是把页面下载并缓存到本地电脑中。页面是有大小的&#xff0c;从互联网到本地电脑&#xff0c;就存在数据流动&#xff0c;从而产生了流量。例如&#xff0c;一个页面&#xff0c;有500kb大小&#xff0c;一次受访&#xff0c;则消…...

简单网站制作教程/超链接友情外链查询

删除 node_modules包 然后npm install 然后再deploy d即可 这个问题真是闹心死我了 https://github.com/npm/npm/issues/17444 网上又有人说是vs code占用了&#xff0c;所以最好把vs code也暂时关掉 我这样做之后就好使了 还有说加环境变量的&#xff0c;也就是把博客地址…...

web前端期末考试网页制作/快速提升排名seo

可编辑版Word完美格式HUNAN CITY UNIVERSITY数据库系统课程设计设计题目&#xff1a;宿舍管理信息系统姓 名&#xff1a;学 号&#xff1a;专 业&#xff1a;信息与计算科学指导教师&#xff1a;20年 12月1日目 录TOC \o "1-3" \h \z HYPERLINK \l "_Toc2306871…...

哪些编程语言适合网站开发/市场营销考试题目及答案2022

一、要命的端口 计算机要与外界进行通信&#xff0c;必须通过一些端口。别人要想入侵和控制我们的电脑&#xff0c;也要从某些端口连接进来。某日笔者查看了一位朋友的系统&#xff0c;吃惊地发现开放了139、445、3389、4899等重要端口&#xff0c;要知道这些端口都可以为黑客…...

做繁体书的网站/优化服务是什么意思

第一步&#xff0c;你需要一张英文底图。 设置map的属性&#xff0c;lang为‘en即可。 类参考&#xff1a; 地图展示代码&#xff1a; var map new AMap.Map(mapContainer, {center: [121.498586, 31.239637], //地图中心点坐标lang: en, //英文底图zoom:16 //地图级别&#x…...

个人经营网站 办理/网站外包公司有哪些

yum puppet 并整合控制台 上篇说了下在ubuntu12.04上安装puppet&#xff0c;安装的版本为puppet2.7.11版本&#xff0c;今天尝试了下在CentOS6.4系统上安装puppet 3.1.1版本,本文参考chenshake的文章 http://www.cactifans.org/linux/994.html 【原文链接,尊重别人的劳动成功】…...