有一个数列,其前三项分别为1、2、3,从第四项开始,每项均为其相邻的前三项之和的1/2,问:该数列从第几项开始,其数值超过1200?
a=[0 for x in range(0, 100)]
a[0]=1
a[1]=2
a[2]=3
i=3
while 1:
a[i]=(a[i-1]+a[i-2]+a[i-3])/2
if a[i]>1200:
print(i+1)
break

这是一个数列问题,数列前三项为1、2、3,后续每一项是前三项之和的一半。代码通过循环计算数列,直到某一项的值超过1200,输出这一项的序号。
有一个数列,其前三项分别为1、2、3,从第四项开始,每项均为其相邻的前三项之和的1/2,问:该数列从第几项开始,其数值超过1200?
a=[0 for x in range(0, 100)]
a[0]=1
a[1]=2
a[2]=3
i=3
while 1:
a[i]=(a[i-1]+a[i-2]+a[i-3])/2
if a[i]>1200:
print(i+1)
break

154

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