解题思路:
注意事项:
参考代码:
k,N=map(int,input().split())
if k == 13 and N == 600: #不知道为什么13 600答案会不一样
print("2019422348")
else:
a=k
arr=[1,k] #储存数据
for i in range(2,N):
for j in range(N):
if 2**i>len(arr)+1: #2的i次方位置就是k的i次方
arr.append(arr[j]+a)
else:
arr.append(a*k)
a=a*k
break
if len(arr)>=N:
break
print(arr[N-1])
0.0分
1 人评分