def solution(n, k):
return climb(n, k, [])
def climb(n, k, jumps):
if n == 0:
return [jumps]
out = []
for i in range(1, k+1):
if i > n:
continue
temp = jumps + [i]
out += climb(n-i, k, temp)
return out