def combinations(n,new,c):
answer = []
if len(new)==n:
return [new]
for i in range(c,len(arr)):
answer.extend(combinations(n,new+[arr[i]],i+1))
return answer
n,m = map(int,input().split())
arr = [i for i in range(1,n+1)]
visited = [False]*(n)
ans = combinations(m,[],0)
for a in ans:
print(*a, sep=' ')
풀이
며칠 전에 풀이한 N, M(1) 문제에서 permutations을 combinations로 변경하기만 하면 된다.