【发布时间】:2013-12-24 02:22:27
【问题描述】:
为什么下面的代码会给出运行时错误 请提出原因,不能像 c++ 那样对数组进行索引
t=input()
dp1=[]
dp3=[]
dp5=[]
dp7=[]
dp1[0]=0
dp3[0]=0
dp5[0]=0
dp7[0]=0
dp1[1]=1
dp3[1]=1
dp5[1]=1
dp7[1]=1
i=2
while i<=10000:
dp1[i]=dp3[i-1]
dp5[i]=dp7[i-1]
dp3[i]=dp1[i-1]+dp5[i-1]
dp7[i]=dp5[i-1]+dp3[i-1]
i+=1
while t>0:
n=int(raw_input())
print dp1[n]+dp3[n]+dp5[n]+dp7[n]
t-=1
错误信息:运行时错误时间:0.01 内存:7852 信号:-1
【问题讨论】:
-
不,python 列表不能任意寻址。如果需要稀疏数组,请使用字典,或先初始化整个列表。
-
- 如果您询问错误,发布错误消息是有意义的。
-
我是 python 新手,请您建议我应该如何更改上述代码以使其正常工作
-
如果您在代码挑战网站上运行它,请先在本地运行它并给我们适当的回溯。 运行时错误消息不够。
标签: python arrays python-2.7 dynamic-programming