模拟
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
static int[] a;
static int n;
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 在此输入您的代码...
n = scan.nextInt();
a = new int[n];
int res = 0;
for (int i = 0; i < n; i++)
a[i] = scan.nextInt();
// boolean s = true;
while (true) {
int[] b = new int[n];
for (int i = 0; i < n; i++) {
if (i > 0) {
b[i] = a[i] / 2 + a[i - 1] / 2;
} else
b[i] = a[i] / 2 + a[n - 1] / 2;
}
for (int i = 0; i < n; i++) {
a[i] = b[i];
}
// int first = a[0];
// for(int i = 0;i < n;i++) {
// if(a[i] != first) {
// s = false;
// }
// }
//孩子分配之后判断一次
if (check() == true)
break;
for (int i = 0; i < n; i++) {
if (a[i] % 2 == 1) {
a[i]++;
res++;
}
}
// first = a[0];
// s = true;
// for(int i = 0;i < n;i++) {
// if(a[i] != first) {
// s = false;
// }
// }
//老师分完之后判断一次
if (check() == true)
break;
}
System.out.println(res);
scan.close();
}
//判断数组中的元素是否都相同
private static boolean check() {
// TODO Auto-generated method stub
int first = a[0];
for (int i = 0; i < n; i++) {
if (a[i] != first) {
return false;
}
}
return true;
}
}