https://www.acmicpc.net/problem/15651
풀이
중복조합을 구현해주는 문제입니다. 백트래킹으로 구현해주어도 되지만 파이썬의 라이브러리인 itertools의 product(데카르트 곱을 구현해주는)를 이용해서 문제를 풀어줘도 좋습니다.
코드
# 15651번 N과 M(3)
import sys
sys.setrecursionlimit(10000)
n, m = map(int, input().split())
arr = []
def find_num(cnt):
if cnt == m:
print(" ".join(list(map(str, arr))))
return
for i in range(1,n+1):
arr.append(i)
find_num(cnt+1)
arr.pop()
find_num(0)
출력결과
'백준 > 백트래킹' 카테고리의 다른 글
[백준][Python] 15663번 N과 M (9) - 코팩 (0) | 2022.09.09 |
---|---|
[백준][Python] 15654번 N과 M (8) - 코팩 (0) | 2022.09.07 |
[백준][Python] 15654번 N과 M (5) - 코팩 (0) | 2022.09.07 |
[백준][Python] 15652번 N과 M (4) - 파이썬 (0) | 2022.09.01 |