main
黄海 2 years ago
parent fb01e15e33
commit 9e69186301

@ -41,14 +41,13 @@ int main() {
while (T--) {
cin >> n;
int a = 0, b = 0;
for (int i = 0; i < n; i++) {
for (int i = 0; i < n; i++) { // n堆石子
int x;
cin >> x;
if (x == 1) a++;
// b != 0时 加1堆 + 加x石子 = 原来的 + x + 1 (其实就是区别一开始的时候)
// 当b != 0时, 我们往后加的delta
// b == 0时 加1堆 + 加x石子 = 0 + 1 + x - 1 = x
// 注意操作符优先级
if (x == 1) a++; // 每堆石子的数量
// b==0时 加1堆+加x石子=0 + 1+x-1=x
// b!=0时 加1堆+加x石子=原来的+x+1
// 偏移量是1个在b=0时需要考虑引入这个偏移量:-1,在b>0时就不必再次考虑了
else
b += b ? x + 1 : x;
}

Loading…
Cancel
Save