来我翻译一下:
一个GCZY政权要对一个村子里的财富进行均分(外国人对GCD还是仇视的哈),所有人把物质先换成金币,假定金币是可以平分的,然后围在一个圆桌,每个人可以给左边或右边的人一些钱,也可以都给或不给,最终目的是平分,现在要计算的是至少需要传递多少钱。编程实现,输入n个人,后面n行是每个人的钱,输出至少需要传递的钱数。
http://blog.csdn.net/sjf0115/article/details/8831688
#include
#include
#include
using namespace std;
const int maxn=1000000+10;
long long A[maxn],C[maxn],tot,M;
int main()
{
int n;
while(scanf("%d",&n)==1)
{
tot=0;
for(int i=1;i<=n;i++)
{
scanf("%lld",&A[i]);
tot+=A[i];
}
M=tot/n;
C[0]=0;
for(int i=1;i
sort(C,C+n);
long long x1=C[n/2],ans=0;
for(int i=0;i
printf("%lld\n",ans);
}
return 0;
}