|
์ฝ๋ ์์ฑํ๊ธฐ
N, M = map(int, input().split())
nums = list(map(str, range(1, N+1)))
result = []
def num():
if len(result) == M:
print(' '.join(result))
return
for i in nums:
if i not in result:
result.append(i)
num()
result.remove(i)
num()
Python
๋ณต์ฌ
|
์ฝ๋ ์ค๋ช
ํ๊ธฐ
์ด์ ์ ์์
์๊ฐ์ ์๊ณ ๋ฆฌ์ฆ์์ AAA AAB AAC โฆ ZZZ๋ฅผ ์ถ๋ ฅํ๋ ์์ ์ ๊ฑฐ์ ๋์ผํ๋ค.
๊ทธ ๋๋ ์ ๋๋ก ์ดํด๋ฅผ ๋ชปํ์๋๋ฐ ์ด์ ์ผ ์ดํด๋ฅผ ํ๊ฒ๋์๋ค. ํท๊ฐ๋ ธ๋ ๊ฒ์ด ๋ฐ๋ณต๋ฌธ๊ณผ ์ฌ๊ท๋ฅผ ๋๋ฉด์ result์ ๋ด๊ธฐ๋ ๊ฐ์ด ๊ณ์ ๋ฐ๋๋๋ฐ ์ด ๊ฒ์ ํด๊ฒฐํ๋ ๋ถ๋ถ์ด ๊ฐ์ฅ ์ด๋ ค์ ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๊ท์ ๋ฃ๊ณ ๋์ ๋ค์ result์์ ๋นผ๋ ๋ถ๋ถ๋ ์ด๋ ค์ ๋ค.
1.
์
๋ ฅ๋ฐ๊ธฐ
a.
N๊ณผ M์ int๋ก ์
๋ ฅ๋ฐ๋๋ค.
b.
์ซ์ ๋ฐฐ์ด์ ๋์ค์ ์ถ๋ ฅํ๊ธฐ ์ฝ๊ฒ string์ผ๋ก ๋ฐ๊พธ์ด์ ๋ฆฌ์คํธ๋ก ๋ง๋ ๋ค. ์ฌ์ ์์ผ๋ก ์ถ๋ ฅํด์ผ ํ๋ฏ๋ก ์ค๋ฅธ์ฐจ์์ผ๋ก ๋ฆฌ์คํธ๋ฅผ ๋ง๋ ๋ค.
(int๋ join์ ํ ์ ์์๋ค.)
2.
์ฌ๊ท ํจ์
a.
๋ฐ๋ณต : ํจ์๊ฐ ์์๋๋ฉด ์ ์ฒด ์ซ์ ๋ฐฐ์ด์ ๋๋ฉด์ result์ ์๋ ์๋ฅผ result์ ๋ฃ๋๋ค.
์ฌ๊ท๋ฅผ ํ์ฐ๊ณ ๋์ result์์ ๋ฃ์๋ ๊ฒ์ ๋นผ์ค์ผ์ง ๋ฐ๋ณต๋ฌธ์์ ๊ฐ์์ ๊ฐ์ ์ํฅ์ ์ฃผ์ง ์๋๋ค.
b.
ํ์ถ : result์ ๊ธธ์ด๊ฐ M์ด ๋๋ฉด ๊ฒฐ๊ณผ๊ฐ์ ์ถ๋ ฅํ๊ณ ํ์ถํ๋ค.