๋ฌธ์
๋ฐฑ์ค 15654. N๊ณผ M(5) https://www.acmicpc.net/problem/15654
์ฝ๋
n, m = map(int, input().split())
number = list(map(int, input().split()))
number.sort()
arr = []
def recur(idx):
if len(arr) == m:
print(*arr)
return
for i in number:
if i not in arr:
arr.append(i)
recur(idx+1)
arr.pop()
recur(1)
ํ์ด
n, m = map(int, input().split()) # n๊ฐ์ ์ซ์ ์ค m๊ฐ ๊ณ ๋ฅด๊ธฐ
number = list(map(int, input().split())) # n๊ฐ์ ์ ์
๋ ฅ
number.sort() # ์ฌ์ ์ ์ถ๋ ฅ์ ์ํด ์ ๋ ฌ
arr = [] # ํ์ฌ๊น์ง ๊ณ ๋ฅธ ์ซ์๋ฅผ ์ ์ฅํ ๋ฆฌ์คํธ
์ ๋ ฅ๋ฐ์ ์๋ค์ ์ฒ๋ฆฌํ๊ณ , ์ ๋ ฌํด ์ฌ์ ์ ์์ด์ ๋ง๋ค ์ค๋น๋ฅผ ํ๋ค.
def recur(idx):
if len(arr) == m:
print(*arr) # m๊ฐ ๋ค ๊ณจ๋์ผ๋ฉด ์ถ๋ ฅ
return
for i in number:
if i not in arr: # ์ค๋ณต์ ํ์ฉํ์ง ์๊ธฐ ์ํด ์ด๋ฏธ ๊ณ ๋ฅธ ์ซ์๋ ์ ์ธ
arr.append(i) # ์ซ์ ์ ํ
recur(idx + 1) # ๋ค์ ์ซ์ ๊ณ ๋ฅด๋ฌ ์ฌ๊ท ํธ์ถ
arr.pop() # ๋ฐฑํธ๋ํน - ๋ง์ง๋ง ์ซ์ ์ ๊ฑฐํ๊ณ ๋ค์ ํ๋ณด ํ์
๋ฐฑํธ๋ํน ํจ์ recur์ ์ ์ํ๋ค.
์ด ํจ์๋ ํ์ฌ๊น์ง ์ ํํ ์์ ๊ฐ์๋ฅผ ์ธ์๋ก ๋ฐ์ ์ฌ๊ท์ ์ผ๋ก ์์ด์ ์์ฑํ๋ค.
i not in arr: ์ด๋ฏธ ๊ณ ๋ฅธ ์ซ์๋ ์ค๋ณตํด์ ๊ณ ๋ฅด์ง ์๋๋ก ์ฒดํฌํ๋ค.
arr.pop(): ํ๋ ์ ํํด์ ์ฌ๊ท ํธ์ถํ๊ณ , ๋ค์ ๋์์ ์์๋ณต๊ตฌํ๋ค.
recur(1)
์ด๊ธฐ๊ฐ์ผ๋ก recur(1)์ ํธ์ถํด ์์ด ์์ฑ์ ์์ํ๋ค.
'๐ก ์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2805. ๋๋ฌด ์๋ฅด๊ธฐ (0) | 2025.04.06 |
---|---|
[๋ฐฑ์ค] 14501. ํด์ฌ (0) | 2025.03.27 |
[ํ๋ก๊ทธ๋๋จธ์ค] N-Queen (0) | 2024.08.07 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์์ฐพ๊ธฐ (0) | 2024.08.06 |
[๋ฐฑ์ค] 1135. ๋ด์ค ์ ํ๊ธฐ (0) | 2024.08.03 |
๋ฌธ์
๋ฐฑ์ค 15654. N๊ณผ M(5) https://www.acmicpc.net/problem/15654
์ฝ๋
n, m = map(int, input().split())
number = list(map(int, input().split()))
number.sort()
arr = []
def recur(idx):
if len(arr) == m:
print(*arr)
return
for i in number:
if i not in arr:
arr.append(i)
recur(idx+1)
arr.pop()
recur(1)
ํ์ด
n, m = map(int, input().split()) # n๊ฐ์ ์ซ์ ์ค m๊ฐ ๊ณ ๋ฅด๊ธฐ
number = list(map(int, input().split())) # n๊ฐ์ ์ ์
๋ ฅ
number.sort() # ์ฌ์ ์ ์ถ๋ ฅ์ ์ํด ์ ๋ ฌ
arr = [] # ํ์ฌ๊น์ง ๊ณ ๋ฅธ ์ซ์๋ฅผ ์ ์ฅํ ๋ฆฌ์คํธ
์ ๋ ฅ๋ฐ์ ์๋ค์ ์ฒ๋ฆฌํ๊ณ , ์ ๋ ฌํด ์ฌ์ ์ ์์ด์ ๋ง๋ค ์ค๋น๋ฅผ ํ๋ค.
def recur(idx):
if len(arr) == m:
print(*arr) # m๊ฐ ๋ค ๊ณจ๋์ผ๋ฉด ์ถ๋ ฅ
return
for i in number:
if i not in arr: # ์ค๋ณต์ ํ์ฉํ์ง ์๊ธฐ ์ํด ์ด๋ฏธ ๊ณ ๋ฅธ ์ซ์๋ ์ ์ธ
arr.append(i) # ์ซ์ ์ ํ
recur(idx + 1) # ๋ค์ ์ซ์ ๊ณ ๋ฅด๋ฌ ์ฌ๊ท ํธ์ถ
arr.pop() # ๋ฐฑํธ๋ํน - ๋ง์ง๋ง ์ซ์ ์ ๊ฑฐํ๊ณ ๋ค์ ํ๋ณด ํ์
๋ฐฑํธ๋ํน ํจ์ recur์ ์ ์ํ๋ค.
์ด ํจ์๋ ํ์ฌ๊น์ง ์ ํํ ์์ ๊ฐ์๋ฅผ ์ธ์๋ก ๋ฐ์ ์ฌ๊ท์ ์ผ๋ก ์์ด์ ์์ฑํ๋ค.
i not in arr: ์ด๋ฏธ ๊ณ ๋ฅธ ์ซ์๋ ์ค๋ณตํด์ ๊ณ ๋ฅด์ง ์๋๋ก ์ฒดํฌํ๋ค.
arr.pop(): ํ๋ ์ ํํด์ ์ฌ๊ท ํธ์ถํ๊ณ , ๋ค์ ๋์์ ์์๋ณต๊ตฌํ๋ค.
recur(1)
์ด๊ธฐ๊ฐ์ผ๋ก recur(1)์ ํธ์ถํด ์์ด ์์ฑ์ ์์ํ๋ค.
'๐ก ์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2805. ๋๋ฌด ์๋ฅด๊ธฐ (0) | 2025.04.06 |
---|---|
[๋ฐฑ์ค] 14501. ํด์ฌ (0) | 2025.03.27 |
[ํ๋ก๊ทธ๋๋จธ์ค] N-Queen (0) | 2024.08.07 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์์ฐพ๊ธฐ (0) | 2024.08.06 |
[๋ฐฑ์ค] 1135. ๋ด์ค ์ ํ๊ธฐ (0) | 2024.08.03 |