201909-2 小明种苹果续
1. 题目介绍
- 本题网址:http://118.190.20.162/view.page?gpid=T93
- 本题截图:
2. Python代码
N = int(input()) # 表示苹果树的棵数
M=[]
T=[]# 每棵苹果树上的苹果数量列表
# 记录每棵苹果树是否发生掉落
drop = [0]*N
E=0 # 计算连续相邻三棵发生掉落的组数
for i in range(N):# 循环输入对每一棵苹果树的操作
M.append(list(map(int, input().split()))) # 本行后面有M[0]个数 M个数放在集合M[1:]中
# 记录初始苹果数量
T.append(M[i][1]) # 记录初始苹果数量
for j in range(1,M[i][0]+1):
if M[i][j]<=0: # 当操作记录<=0 (疏果操作)
T[i] += M[i][j]
else:
if M[i][j] < T[i]: # 若发生苹果掉落
T[i] = M[i][j] # 更新苹果数量
drop[i]=1
T = sum(T)
# 计算发生掉落的苹果树棵树
D = drop.count(1)
# 计算连续相邻三棵发生掉落的组数
drop.extend([drop[0],drop[1]])#将前两个指放入到达首尾连接,只适合3个为一个组的
for i in range(1,N+1):
if sum(drop[i-1:i+2])==3:# 若连续三个都掉落则记为一组
E += 1
print(T,D,E)
3.测试结果:
- 总结:小白刚刚接触csp,若代码算法关于简单,过于暴力望谅解