西电复试之——CCF201909-02 小明又种水果 100分
#include<stdio.h>
#include<iostream>
using namespace std;
int all = 0;
const int maxn = 1010;
int flag[maxn] = { 0 };
int main() {
int n, d = 0, e = 0;
cin >> n;
for (int i = 0; i < n; i++) {
int m, num=0, temp;
cin >> m >> num;
for (int j = 1; j < m; j++) {
cin >> temp;
if (temp <= 0) {
num += temp;
}
else if (temp < num) {
num = temp;
flag[i] = 1;
//d++;
}
}
all += num;
if (flag[i]) d++;
}
if (n >= 3) {
for (int i = 0; i < n; i++) {
if (flag[i] == 1 && flag[(i - 1 + n) % n] && flag[(i + 1 + n) % n]) {
e++;
}
}
}
cout << all << " " << d << " " << e;
return 0;
}
**
出错原因(50分)
**
一次内部循环结束,再判断flag,d++,否则d可能加多次