[정답]
1. 두 수를 입력받아 N,M을 정의한다.
2. 1부터 N까지의 자연수 중에서 고르는 문제니까 수 1~N을 list에 넣는다.
3. itertools 모듈의 product() 함수를 사용하여 중복 순열을 구한다.
( 주의할 점: 이전 permutations() 함수와 combinations() 함수는 두 번째 파라미터에 repeat을 안 적어도 되었지만, product() 함수의 경우 repeat를 꼭 적어주어야 한다. 안 적으면 오류 발생. )
4. for문을 돌면서 중복 순열을 차례대로 출력한다.
이 문제는 #15649:N과 M(1) & #15650:N과 M(2)의 연장선 문제이다.
#15649:N과 M(1) → 중복을 제외한 순열 구하는 문제 → permutations() 함수 사용
#15650:N과 M(2) → 중복을 제외한 순서 상관없는 조합 구하는 문제 → combinations() 함수 사용
#15651:N과 M(3) → 중복 순열 구하는 문제 → product() 함수 사용
[itertools 모듈에 대한 자세한 설명]
https://heewon9809.tistory.com/193
'알고리즘 공부 > 백준 > Python3' 카테고리의 다른 글
[백준 파이썬] #15654: N과 M(5) (0) | 2021.01.04 |
---|---|
[백준 파이썬] #15652: N과 M(4) (0) | 2021.01.04 |
[백준 파이썬] #15650: N과 M(2) (0) | 2021.01.03 |
[백준 파이썬] #15649: N과 M(1) (0) | 2021.01.02 |
[백준 파이썬] #2752: 세수정렬 (0) | 2021.01.02 |