728x90
반응형
문제 링크
https://www.acmicpc.net/problem/15649
정답 코드는 아래와 같습니다.
1
2
3
4
5
6
7
|
import itertools
n, m = map(int, input().split())
for perm in itertools.permutations(list(range(1, n+1)), m):
for item in perm:
print(item, end = ' ')
print("")
|
cs |
다른 언어를 사용한다면 itertools의 permutation 구현을 직접 해야겠지만,
python 을 이용하는 경우 기본 library 에 포함되어 있으므로 매우 쉽고 간편하게 계산할 수 있습니다.
다만, permutation 의 경우 언어에 따라 기본 library 로 제공되는 경우가 적기 때문에
python 으로 풀이할 수 없는 경우를 대비하여 permutation 의 원리를 이해하시기를 권장드립니다.
backtracking 이라는 키워드로 검색하면 많은 자료를 찾아보실 수 있을 것입니다.
풀이는 아래 영상을 참고 바랍니다.
https://www.youtube.com/watch?v=2qjrv4UMpVM
저작권 라이선스: CC BY (출처만 표시하면 자유롭게 이용 가능)
728x90
반응형
'백준(BOJ) 문제 풀이' 카테고리의 다른 글
백준 10926번 문제(??!) 파이썬(Python) 풀이 [로밍맨] (0) | 2023.03.02 |
---|---|
백준 10718번 문제(We love kriii) 파이썬(Python) 풀이 [로밍맨] (0) | 2022.10.07 |
백준 1085번 문제(직사각형에서 탈출) 파이썬(Python) 풀이 [로밍맨] (0) | 2022.08.22 |
백준 2263번 문제(트리의 순회) C++ 풀이 [로밍맨] (0) | 2022.08.18 |
백준 1708번 문제(볼록 껍질) 파이썬(Python) 풀이 [로밍맨] (2) | 2022.07.21 |