洛谷 P1031 均分纸牌
很巧妙的思维题
用数字表示
直接全加成零就得了
有点像减法的借位
#include <iostream>
using namespace std;
int arr[120] = {0};
int main()
{
int N, sum = 0, step = 0;
cin>>N;
for(int i = 0; i < N; i++)
{
cin>>arr[i];
sum += arr[i];
}
int avr = sum / N;
for(int i = 0; i < N; i++)
{
arr[i] = arr[i] - avr;
}
/*for(int i = 0; i < N; i++)
cout<<arr[i]<<' ';*/
for(int i = 0; i < N; i++)
{
if(arr[i] != 0)
{
arr[i + 1] = arr[i + 1] + arr[i];
arr[i] = 0;
step ++;
}
}
cout<<step<<endl;
return 0;
}