We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 4559613 commit 4690d44Copy full SHA for 4690d44
김지호/260127.py
@@ -0,0 +1,35 @@
1
+# https://www.acmicpc.net/problem/15663
2
+# N과 M (9) , 실버2
3
+
4
+import sys
5
+sys.stdin = open("./input.txt",'r')
6
7
+# 입력 받기
8
+N, M = map(int, input().split())
9
+numbers = sorted(list(map(int, input().split())))
10
11
+visited = [False] * N # 각 인덱스의 사용 여부 체크
12
+answer = [] # 현재 탐색 중인 수열
13
14
+def dfs():
15
+ if len(answer) == M:
16
+ print(*answer)
17
+ return
18
19
+ last_used = 0 # 현재 depth에서 마지막으로 선택한 숫자 초기화
20
21
+ for i in range(N):
22
+ # 1. 이미 사용한 인덱스이거나
23
+ # 2. 현재 depth에서 이전에 선택했던 숫자와 같다면 건너뜀
24
+ if not visited[i] and numbers[i] != last_used:
25
+ visited[i] = True
26
+ answer.append(numbers[i])
27
+ last_used = numbers[i]
28
29
+ dfs()
30
31
+ # 백트래킹 (상태 복구)
32
+ visited[i] = False
33
+ answer.pop()
34
35
+dfs()
0 commit comments