- 문제 : N과 M (5)
- 난이도 : 실버 3
- 언어 : Python
- 문제 링크 : https://www.acmicpc.net/problem/15654
def recur(lev):
if lev == M:
print(*path)
return
for i in range(N):
if visited[i] == 0:
visited[i] = 1
path.append(arr[i])
recur(lev+1)
visited[i] = 0
path.pop()
N, M = map(int, input().split())
arr = list(map(int, input().split()))
arr.sort()
visited = [0] * N
path = []
recur(0)
visited를 통해 중복된 값을 처리해준다.
'BOJ' 카테고리의 다른 글
백준 15656. N과 M (7) [Python] (0) | 2022.06.04 |
---|---|
백준 15655. N과 M (6) [Python] (0) | 2022.06.04 |
백준 15652. N과 M (4) [Python] (0) | 2022.06.03 |
백준 15651. N과 M (3) [Python] (0) | 2022.06.03 |
백준 15650. N과 M (2) [Python] (0) | 2022.06.03 |