csp 小明种苹果(续)
#include<iostream>
#include<algorithm>
#include<stack>
using namespace std;
int main(){
int n,m,a,c=0,d=0,t=0;
cin>>n;
int tree[n]={0};
for(int i=0;i<n;i++){
c=0;
cin>>m;
int f=0;//每棵树都要重置标记
for(int j=0;j<m;j++){
int b;
cin>>b;
if(b<=0)
c+=b;
else{
if(c>b)//c是疏果操作后剩余的个数,b>0 是统计实际数
{//不能再这里统计d,因为一棵树可能有多次统计,疏果操作
tree[i]++;
f=1;
}
c=b;
}
}
t+=c;
if(f){
d++;
}//统计发生苹果掉落的棵树
}
int e=0;
for(int i=0;i<n;i++){
if(tree[(i+1)%n]>0&&tree[(i+2)%n]>0&&tree[i]>0){
e++;
}
}
cout<<t<<" "<<d<<" "<<e;
}