https://www.acmicpc.net/problem/15663
나의 코드
n, m = map(int, input().split())
arr = list(map(int, input().split()))
arr.sort() # 사전 순으로 출력
visited = [0]*n
ans = []
def backtracking():
if len(ans) == m:
print(*ans)
return
check = 0
for i in range(n):
if not visited[i] and arr[i] != check:
visited[i] = 1
ans.append(arr[i])
check = arr[i]
backtracking()
ans.pop()
visited[i] = 0
backtracking()
결과

백트래킹 여전히 어렵군...ㅎㅎ 중복제거를 하기 위한 변수 설정 어렵다. 진짜 백트래킹문제 다시 풀어봐야겠다.
'스터디 1일 1커밋' 카테고리의 다른 글
| 240610 [BOJ/백준] 1912. 연속합 (0) | 2024.06.10 |
|---|---|
| 240531 [BOJ/백준] 1149. RGB거리 (0) | 2024.05.31 |
| 240528 [BOJ/백준] 1926. 그림 (0) | 2024.05.28 |
| 240527 [BOJ/백준] 3980. 선발 명단 (0) | 2024.05.27 |
| 240527 [BOJ/백준] 14889. 스타트와 링크 (0) | 2024.05.27 |