0
点赞
收藏
分享

微信扫一扫

题目 1004: 母牛的故事(递推)


文章目录

  • ​​Question​​
  • ​​Ideas​​
  • ​​Code​​

Question

题目描述
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

输入
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。

输出
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。

样例输入
2
4
5
0
样例输出
2
4
6

Ideas

第n年的牛数 = 第n-1年的牛数 + 第n-3年前的数目(小牛四年后可以生)

Code

# 递推
list = []#定义列表
list.append(0)# 往list添加初始数据
list.append(1)# 第一年奶牛数量为1
list.append(2)# 第一年奶牛数量为2
list.append(3)# 第一年奶牛数量为3
for i in range(4,1000): #预处理前1000年的奶牛数量
list.append(list[i-1]+list[i-3])
while True:
n = int(input())#化为整型
if n==0: #n ==0 时退出
break
print(list[n]) #已经预处理了,所有直接输出就可以了


举报

相关推荐

0 条评论