33,008
社区成员
发帖
与我相关
我的任务
分享
import random
lst = list(range(1,21))
lst.reverse()
def solve(lst,goal,result = []):
if goal > sum(lst):
return
for i in range(len(lst)):
if lst[i] > goal:
continue
elif lst[i] == goal:
print(result + [lst[i],])
continue
else:
solve(lst[i + 1:],goal - lst[i],result + [lst[i],])
solve(lst,180)