j=1
n=int(input())
flag=[]*29
a=[]*29
for i in range(len(a)):
a[i]=1.0/(i+2)
for j in range(2**29):
temp=j
index=0
sum=0
while temp>0 and index<29:
flag[index]=temp%2
index=index+1
sum+=(temp%2)*a[index]
temp=temp/2
if sum==1:
count=0
index=index+1
for i in range(index):
if flag[i]==1:
count+=1
if count==n:
for i in range(len(flag)):
if flag[i]!=0:
print(flag[i]+"/"+(i+2)+"")
log:IndexError:列表分配索引超出范围
我无法修复.list分配索引超出范围。你能帮助我吗 ?
答案 0 :(得分:0)
&#34;指数=指数+ 1&#34;当i = max(index)
时,当调用flag [i]时,会将其设置为超出范围的30