解题思路:
想不出有啥捷径,按步骤做
注意事项:
参考代码:
#include<iostream>
#include<algorithm>
#include <set>
using namespace std;
int a[1010];
int b[1010];
int main(){
int n;
int num = 0;
set<int> p;
cin >> n;
for(int i = 0; i < n; i++){
cin >> a[i];
p.insert(a[i]);
}
while(p.size() != 1){
p.clear();
memcpy(b,a,sizeof(a));
for(int i = 0; i < n; i++){
a[(i+1)%n] = b[(i+1)%n]/2 + b[i]/2;
if(a[(i+1)%n] % 2 != 0){
num++;
a[(i+1)%n]++;
}
p.insert(a[(i+1)%n]);
}
}
cout << num << endl;
return 0;
}
0.0分
0 人评分