题目名称 1430. [UVa 11300]分金币
输入输出 Wealth.in/out
难度等级 ★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatar超级傲娇的AC酱 于2014-01-17加入
开放分组 全部用户
提交状态
分类标签
基本 数学 高斯消元法 数论
分享题解
通过:53, 提交:162, 通过率:32.72%
GravatarrpCardinal 100 0.068 s 7.92 MiB C++
Gravatar阿狸 100 0.089 s 15.58 MiB C++
Gravatar神利·代目 100 0.092 s 7.92 MiB C++
GravatarrpCardinal 100 0.114 s 7.92 MiB C++
Gravatar黑夜<=>白天 100 0.121 s 15.57 MiB C++
GravatarAglove 100 0.124 s 15.57 MiB C++
Gravatar雪狼 100 0.126 s 4.13 MiB C++
Gravatarsvideo 100 0.131 s 7.94 MiB C++
Gravatarmises 100 0.149 s 15.55 MiB C++
Gravatar超级傲娇的AC酱 100 0.150 s 20.88 MiB C++
本题关联比赛
夭寿的小练习
关于 分金币 的近10条评论(全部评论)
很有意思的一道数学题,不算很难
不过不一定要像学长说的那样纯数学推理,建议先推一下规律再看就会豁然开朗了
Gravatar冷月星云
2022-06-23 02:07 7楼
Sort最优的的x竟然是中位数,这怎摸想出来的
GravatarNVIDIA
2016-03-03 07:44 6楼
真难,没想出来......
Gravatar神利·代目
2015-10-03 21:24 5楼
直接排中位数
Gravatar这_不错
2015-09-20 20:11 4楼
读入优化+快速选择=0.068s
GravatarrpCardinal
2014-03-18 15:45 3楼
谁能讲讲这个题的原理,我的区分方法好像太复杂了。而且也不对
Gravatarwolf
2014-01-26 15:38 2楼
Gravatar超级傲娇的AC酱
2014-01-17 10:04 1楼

1430. [UVa 11300]分金币

★☆   输入文件:Wealth.in   输出文件:Wealth.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

圆桌旁坐着$n$个人,每个人有一定数量的金币,金币数总能被$n$整除。每个人可以给他左右相邻的人一些金币,最终使得每个人的金币数相等。你的任务是求出被转手的金币数量最小值。

比如,$n=4$,且4个人的金币数分别是1,2,5,4时,只需转移4枚金币(第3个人给第2个人2枚金币,第2个人和第4个人分别给第一个人1枚金币)即可实现每人手中的金币数相等。

【输入格式】

输入包括多组数据。每组数据的第一行为整数$n(n≤10^6)$,以下$n$行每行为一个整数,按逆时针的顺序给出每个人拥有的金币数。输入结束标志为文件结束符(EOF).

【输出格式】

对于每组数据,输出被转手的金币数量的最小值。

输入保证这个值在64位无符号整数范围内。

【样例输入】

3
100
100
100
4
1
2
5
4

【样例输出】

0
4

【题目来源】

Spreading the Wealth ,UVa 11300