์ซ์๋ฅผ ๋ด์ 1์ฐจ์ ๋ฆฌ์คํธ mylist๊ฐ ์์ด์. ์์๋ก ์ด๋ฃจ์ด์ง ๋ชจ๋ ์์ด์ ์ฌ์ ์์ผ๋ก ๋ฆฌํดํ๋ solution ํจ์๋ฅผ ๋ง๋์ธ์!
input example 1:
[2, 1]
output example 1:
[[1, 2], [2, 1]]
input example 2:
[1, 2, 3]
output example 2:
[[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]
์๋ง ํด๋น ๊ธฐ๋ฅ์ ๋ชจ๋ฅด์ ๋ค๋ฉด for๋ฌธ์ ์ด์ฉํด ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด ๊ฐ ๊ฒ์ด๋ผ ์์๋ผ์!
def solution(mylist):
result = [mylist[:]]
c = [0] * len(mylist)
i = 0
while i < len(mylist):
if c[i] < i:
if i % 2 == 0:
mylist[0], mylist[i] = mylist[i], mylist[0]
else:
mylist[c[i]], mylist[i] = mylist[i], mylist[c[i]]
result.append(mylist[:])
c[i] += 1
i = 0
else:
c[i] = 0
i += 1
return resultํ์ด์ฌ์ itertools์๋ permutations๋ผ๋ ํจ์๊ฐ ์์ด์!
import itertools
def solution(mylist):
mylist.sort()
return list(map(list, itertools.permutations(mylist)))์์ฃผ ๊ฐ๋จํ๊ฒ ๊ตฌํ์ด ๋๋๊ตฐ์!
์ ๋ง ์ฐ๋ฆฌ๊ฐ ์๊ฐํ๋ ๊ฒ ์ด์์ ๊ธฐ๋ฅ์ ๊ฐ์ง ํจ์๋ค์ด ๋ง์ ๊ฒ ๊ฐ์์.