https://www.acmicpc.net/problem/15654
https://github.com/stellaluminary/Baekjoon
본 문제는 N과 M 시리즈 - 백트래킹 문제다.
N과 M (1) : https://aigong.tistory.com/427
N과 M (2) : https://aigong.tistory.com/428
N과 M (3) : https://aigong.tistory.com/475
N과 M (4) : https://aigong.tistory.com/476
N과 M (5) : https://aigong.tistory.com/480
N과 M (6) : https://aigong.tistory.com/481
N과 M (7) : https://aigong.tistory.com/482
N과 M (8) : https://aigong.tistory.com/483
N과 M (9) : https://aigong.tistory.com/484
N과 M (10) : https://aigong.tistory.com/485
N과 M (11) : https://aigong.tistory.com/486
N과 M (12) : https://aigong.tistory.com/487
사전 순으로 증가하는 순서는 초기 입력받는 list를 정렬하고 백트래킹하면 된다.
def dfs(idx):
global n, m
if idx == m:
print(*s)
return
for i in l:
if i not in s:
s.append(i)
dfs(idx+1)
s.pop()
import sys
input = sys.stdin.readline
n,m = map(int, input().split())
l = list(map(int, input().split()))
l.sort()
s = []
dfs(0)