题目:
见https://blog.csdn.net/wingrez/article/details/101976251
思路:
有一说一这么简单的题ac不了属实有点菜,要注意的点就是,发生掉落后只记录一次表明该树发生了掉落,多次掉落每次都得更新为发生掉落后果树上还剩余的果子数量!!!
AC代码:
#include<iostream>
using namespace std;
const int N=1e3+10;
int n,flag[N],sum,counts,res;
int main()
{
cin>>n;
for(int i=0;i<n;i++)
{
int m,k;
cin>>m>>k;
for(int j=1;j<=m-1;j++)
{
int x;
cin>>x;
if(x<=0)
k+=x;
else if(x<k&&!flag[i])
{
flag[i]=1;
k=x;
counts++;
}
else if(x<k&&flag[i])
k=x;
}
sum+=k;
}
for(int i=0;i<n;i++)
{
if(flag[i]&&flag[(i+1)%n]&&flag[(i+2)%n])
res++;
}
cout<<sum<<" "<<counts<<" "<<res<<endl;
return 0;
}