洛谷题解 P1031 【均分纸牌】

这道题很简单

原理是从左到右一个一个排,把差值m加起来加到后面一堆牌里

具体ac代码如下:

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int a[101];
int main(){
int n,m,sum=0,k=0;
cin>>n;
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
sum=sum/n;
for(int i=1;i<n;i++)//因为从a[i]到a[i+1]比,所以循环n-1次就行了
{
m=a[i]-sum;
a[i+1]+=m;
if(m!=0)k++;
}
cout<<k;
return 0;
}


谢谢大家自己看吧杜绝抄袭

原文地址:https://www.cnblogs.com/lbssxz/p/10452769.html