-
题目链接:小明种苹果(续)
-
题目描述
-
满分代码
#include <iostream> #include <algorithm> using namespace std; typedef struct TREE { int num; //编号 long long remain; //剩下的总数 bool full; //苹果掉落标记 }TREE; TREE tree[1010]; //存所有树 int main() { int N,M; int sum = 0; //最后剩下的苹果数 int fullTree = 0; //发生掉落的棵数 int threeCnt = 0; //三连计数 cin>>N; //棵数 for(int i=1;i<=N;i++) { tree[i].num = i; tree[i].full = false; tree[i].remain = -1; int subTemp = 0; cin>>M>>tree[i].remain; for(int j=0;j<M-1;j++) { cin>>subTemp; if(subTemp<=0) tree[i].remain += subTemp; else { if(tree[i].remain != subTemp) { tree[i].full = true; tree[i].remain = subTemp; } } } sum += tree[i].remain; if(tree[i].full) fullTree++; } if(tree[N].full && tree[1].full && tree[2].full) threeCnt++; if(tree[N-1].full && tree[N].full && tree[1].full) threeCnt++; for(int i=2;i<=N-1;i++) if(tree[i-1].full && tree[i].full && tree[i+1].full) threeCnt++; cout<<sum<<" "<<fullTree<<" "<<threeCnt<<endl; return 0; }
-
说明:这题比第一题还简单点,都不用排序了,模拟过程就好。注意看清题写仔细一点
CSP 201909-2 小明种苹果(续)
最新推荐文章于 2023-02-20 16:57:39 发布