← Back to List

12101번: 1, 2, 3 더하기 2 ↗

Solutions

Python 3
373 B | 373 chars
def dfs(L, crt, remain):
    if remain == 0:
        L.append(crt[:])
    else:
        for i in range(1, 4):
            crt.append(i)
            if(remain - i >= 0):
                dfs(L, crt, remain - i)
            crt.pop()


N,K = map(int ,input().split())
L = []
crt = []
dfs(L, crt, N)
if K > len(L):
    print(-1)
else:
    print("+".join(list(map(str,L[K-1]))))