algorithm/문제
[Python]백준 15649/N과 M(1)(2)(3)(4) / itertools
유랄라-
2022. 3. 12. 01:19
반응형
https://www.acmicpc.net/problem/15649
https://www.acmicpc.net/problem/15650
⚡️ 문제 설명
자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성
⚡️ 해결 방법
파이썬 내장 모듈 itertools를 이용한다
2022.03.12 - [algorithm/개념] - [알고리즘] 완전탐색 / itertools / 순열 중복순열 조합 중복조합
[알고리즘] 완전탐색 / itertools / 순열 중복순열 조합 중복조합
itertools 모듈 순열 permutations(list, r=None) 중복순열 product(list, repeat=1) 조합 combinations(list, r) 중복조합 combinations_with_replacement(list, r) # 순열 : permutations(list, r=None) from it..
tral-lalala.tistory.com
itertools 참조
⚡️ 코드
(1) permutations
import sys
from itertools import permutations
input = sys.stdin.readline
n,m=map(int,input().split())
numlist= [i for i in range(1,n+1)]
for re in permutations(numlist,m):
for r in re:
print(r,end=' ')
print()
(2) combinations
from itertools import combinations
import sys
input = sys.stdin.readline
n,m=map(int,input().split())
numlist=[i for i in range(1,n+1)]
for re in combinations(numlist,m):
for r in re:
print(r,end=' ')
print()
(3) product
from itertools import product
import sys
input = sys.stdin.readline
n,m=map(int,input().split())
numlist=[i for i in range(1,n+1)]
for re in product(numlist,repeat=m):
for r in re:
print(r,end=' ')
print()
(4) combinatinos_with_replacement
from itertools import combinations_with_replacement
import sys
input = sys.stdin.readline
n,m=map(int,input().split())
numlist=[i for i in range(1,n+1)]
for re in combinations_with_replacement(numlist,m):
for r in re:
print(r,end=' ')
print()
반응형