小明种苹果
#include<iostream>
using namespace std;
int main()
{
int n,m;
cin>>n>>m;
int sum=0;
int k=0;//记录编号
int maxa=0;//最大值
for(int i=0;i<n;i++){
int a;
int shu=0;
cin>>a;
for(int j=0;j<m;j++){
int b;
cin>>b;
a=a+b;
shu+=-b;
}
if(shu>maxa) {
k=i+1;
maxa=shu;
}
sum+=a;
}
cout<<sum<<" "<<k<<" "<<maxa;
return 0;
}
小明种苹果(续)
注意一棵树的掉落只记录一次
#include<iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int sum=0;
int drop[1005]={0};//掉落标记
int num=0;
int side=0;
for(int i=0;i<n;i++){
int m;
cin>>m;
int b[m];
int k;//该课树的初始数目&当前数目
cin>>k;
for(int j=1;j<m;j++){
cin>>b[j];
if(b[j]<=0){
k=k+b[j];
}else{
if(k!=b[j]&&!drop[i]){//掉落只统计一次
drop[i]=1;
num++;
}
k=b[j];//但如果掉落两次两次都需要记录
}
}
sum+=k;
}
for(int i=0;i<n;i++){
if(drop[i]&&(drop[(i+1)%n])&&drop[(i+2)%n]) side++; //简化
}
cout<<sum<<" "<<num<<" "<<side<<endl;
return 0;
}
这两段代码分别实现了苹果生长和掉落的统计。第一段程序计算了每一棵树的总生长量和最大的负增长量,以及所有树的生长总量。第二段程序关注于苹果掉落的情况,统计了每棵树的掉落次数,并找出连续三棵掉落的树的数量。
1621

被折叠的 条评论
为什么被折叠?



