[Python] 백준15650 N과 M (2)
문제
예제 입력
코드
from itertools import combinations
n, m = map(int, input().split())
arr = [ i+1 for i in range(n) ]
res = list(combinations(arr, m))
for lst in res:
for num in lst:
print(num, end=' ')
print()
설명
파이썬을 통해서 사용자로부터 입력받아 조합을 사용하여 N과 M (2)를 구현했습니다.
정리
N, M = map(int, input().split())
arr = []
def backt(st):
if len(arr) != M:
for i in range(st, N+1):
arr.append(i)
backt(i+1)
arr.pop()
else :
print(*arr)
backt(1)
그 외에도 백트래킹알고리즘을 사용하여 해결할 수 있습니다.