조합문제이다. 순열과 비슷하면서도 다른데, 순열은 1,2 2,1 둘다 되지만, 조합은 1,2 만가능하다. 2 다음에는 2보다 작은 값이 올 수 없도록 처리하면 조합이 된다. 그래서 for의 범위를 넘겨주어 이전의 값+1 부터 뽑도록 했다. N, M = map(int, input().split()) select = [0] * M def comb(idx, start): if idx == M: print(" ".join(map(str, select))) return for i in range(start, N): select[idx] = i+1 comb(idx+1, i+1) comb(0, 0) for문을 통해서 보면 이해하는 데 더 편하다. arr = [1, 2, 3, 4, 5] N = len(arr) for ..