1+ """
2+ #15654. Nκ³Ό M (5)
3+ https://www.acmicpc.net/problem/15654
4+
5+ - Nκ°μ μμλ€λ‘ ꡬμ±λ μμ΄ μ€, κ°μκ° mκ°μΈ μμ΄λ€ μ°ΎκΈ°
6+ - μ¬μ μ = μ€λ¦μ°¨μμΌλ‘ μΆλ ₯
7+ - μ€λ³΅λλ μμ΄ => μ¬κ·
8+ # TIL
9+ q = [1,2,3]
10+ print(*q) > 1,2,3 # νμ€λ‘ 리μ€νΈ μμλ€ μΆλ ₯ κ°λ₯
11+ """
12+ import sys
13+
14+ #0. μ
λ ₯ λ°κΈ°
15+ N , M = map (int , sys .stdin .readline ().split ())
16+ # Mκ°μ μμ΄ κ²°κ³Όλ₯Ό μ μ₯ν λ°°μ΄
17+ result = [0 for _ in range (M )]
18+ # ν΄λΉ μμ μ¬μ© μ¬λΆ check ν¨μ
19+ check = [0 for _ in range (N )]
20+ # n κ° μμ΄ μμ ν보ꡰ μ μ₯νλ 리μ€νΈ
21+ elements = list (map (int , sys .stdin .readline ().split ()))
22+ #μ€λ¦ μ°¨μ μ λ ¬ for μ€λ¦μ°¨μ κ²°κ³Ό μΆλ ₯
23+ elements .sort ()
24+ # print(elements)
25+
26+ # 1. m κ° μμ΄ μ°ΎκΈ° by μ¬κ· ν¨μ
27+ """
28+ def fun(n) :
29+ if μ¬κ·μ’
λ£ μ‘°κ±΄
30+ else :
31+ μ¬κ·λ‘ λ€μ μ€ν
μ΄μ§λ‘ λμ΄κ°κΈ° μ μ μ€ννλ μ½λλ€
32+ fun(n+-1) # μ¬κ·
33+ μ΄μ μ¬κ· ν¨μμ μ¬κ·μ’
λ£ μ‘°κ±΄ μ’
λ£ ν μ€ν
34+
35+ """
36+
37+ # start point
38+ def perm (m ) : # m : result μμ λ€μ΄κ°μλ μμ κ°μ = λ£μ μμΉ
39+ if m == M : # result κ°μ κ°μΌλ©΄ = μ¬κ· μ’
λ£ μ‘°κ±΄
40+ print (* result ) # μΆλ ₯
41+
42+ else :
43+ for i in range (N ) : # λ λ½μμΌ νλ©΄ , N κ° ν보ꡰ μ€μ νμΈ
44+ if check [i ] == 0 : #νμ¬ ν보μμ(i) μ¬μ© κ°λ₯ν¨
45+ result [m ] = elements [i ] # resultμ λ±λ‘
46+ check [i ] = 1 # μ¬μ©μ€
47+ perm (m + 1 ) # result μ m+1 κ° λ€μ΄κ° μμ
48+ check [i ] = 0 # μ¬μ© μλ£
49+
50+ perm (0 )
51+
52+ """
53+ # (μΆκ°)μ건 μΆλ ₯λ μμ΄ μ€μ μ€λ³΅ μμ΄ μΆλ ₯λλ κ²½μ°
54+
55+ # start point
56+ def perm(m , start_point) : # m : result μμ λ€μ΄κ°μλ μμ κ°μ = λ£μ μμΉ
57+ if m == M : # result κ°μ κ°μΌλ©΄ = μ¬κ· μ’
λ£ μ‘°κ±΄
58+ print(*result) # μΆλ ₯
59+ # print(check)
60+ for s in range(start_point+1,N):
61+ check[s] = 0 # μ¬μ© μλ£
62+ # print(f"νμ¬ ; {check}")
63+ else :
64+ for i in range(N) : # λ λ½μμΌ νλ©΄ , N κ° ν보ꡰ μ€μ νμΈ
65+ if check[i] == 0 : #νμ¬ ν보μμ(i) μ¬μ© κ°λ₯ν¨
66+ result[m] = elements[i] # resultμ λ±λ‘
67+ check[i] = 1 # μ¬μ©μ€
68+ # print(f"μ
λ°μ΄νΈ μ€ {check}")
69+ perm(m+1, start_point) # result μ m+1 κ° λ€μ΄κ° μμ
70+ start_point += 1 # λ€μ μΉΈμΌλ‘ μ΄λ
71+
72+ perm(0 , 0)
73+ """
0 commit comments