๋ฐฑํธ๋ํน ๋ฌธ์
์์ด๋์ด
์ด์ฐจํผ ๊ฐ์ ์ซ์๋ฅผ ๋ฐ๋ณตํด์ ์ฌ์ฉํด๋ ๋๋ฏ๋ก, ๋ฌธ์ ์์ ์ ๊ณตํ N๊ฐ์ ์์์ ์ค๋ณต์ ์ ๊ฑฐํด ์ค๋ค.
๋ฐฑํธ๋ํน์ ํ์ฉํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ฉด ๋๋ค.
์ ์ฒด ์ฝ๋
N, M = map(int, input().split())
numList = [int(x) for x in input().split()]
numList = sorted(list(set(numList))) # ์ค๋ณต ์ ๊ฑฐํ ์ ๋ ฌ
n = len(numList)
answer = list()
seq = []
def dfs(num, depth):
if depth == M:
print(" ".join(map(str, seq)))
return
for i in range(numList.index(num), n):
seq.append(numList[i])
dfs(numList[i], depth + 1)
seq.pop()
dfs(numList[0], 0)
์ฝ๋ ์ค๋ช
def dfs(num, depth):
if depth == M:
print(" ".join(map(str, seq)))
return
for i in range(numList.index(num), n):
seq.append(numList[i])
dfs(numList[i], depth + 1)
seq.pop()
์ ๊ณต๋ ์ซ์๋ค์ ์ํํ๋ฉฐ ๊ธธ์ด๊ฐ M์ธ ์์ด์ ๋ง๋ค์ด์ค๋ค.
์์ด์ ๊ธธ์ด๊ฐ M์ด ๋๋ฉด print๋ก ๋ฐ๋ก ์ถ๋ ฅํด ์ค๋ค. ์ด์ ์ ์ด๋ฏธ ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌํด ๋์์
์ถ๋ ฅ ์์๋ ๊ณ ๋ ค ์ ํด๋ ๋๋ค.
'๐งฉ Problem Solving > [๋ฐฑ์ค]' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 16918 ๋ด๋ฒ๋งจ (python ํ์ด์ฌ) (0) | 2024.03.23 |
---|---|
[๋ฐฑ์ค] 1697 ์จ๋ฐ๊ผญ์ง (python ํ์ด์ฌ) (0) | 2024.03.22 |
[๋ฐฑ์ค] 14940 ์ฌ์ด ์ต๋จ๊ฑฐ๋ฆฌ (python ํ์ด์ฌ) (0) | 2024.03.20 |
[๋ฐฑ์ค] 1205 ๋ฑ์ ๊ตฌํ๊ธฐ (python ํ์ด์ฌ) (0) | 2024.03.19 |
[๋ฐฑ์ค] 21736 ํ๋ด๊ธฐ๋ ์น๊ตฌ๊ฐ ํ์ํด (python ํ์ด์ฌ) (0) | 2023.11.19 |