코테 공부/백준

[Python] 10974 모든 순열(itertools.permutation) 쉬움

prefer_all 2022. 8. 19. 11:57
문제

N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오.

 

입력

첫째 줄에 N(1 ≤ N ≤ 8)이 주어진다. 

출력

첫째 줄부터 N!개의 줄에 걸쳐서 모든 순열을 사전순으로 출력한다.

예제 입력 예제 출력
3 1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

풀이
from itertools import permutations

num = int(input())
temp = []
for n in range(1, num+1):
    temp.append(n)
arr = permutations(temp, num)
for i in arr:
    print(*i)

array로도 permutation 사용 가능

permutation(순회할 것, 개수(nCr의 r) )