문제
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) )
'코테 공부 > 백준' 카테고리의 다른 글
[Python/정렬] 1427 소트인사이드 (쉬움) (0) | 2022.08.19 |
---|---|
[Python] 2407 조합 (쉬움) (0) | 2022.08.19 |
[Python/그리디] 1715 카드 정렬하기 (0) | 2022.08.18 |
[Python/완전탐색] 4673 셀프 넘버 (쉬움) (0) | 2022.08.18 |
[Python/해시] 11652 카드 (0) | 2022.08.18 |