본문 바로가기

알고리즘 공부/백준 > Python3

[백준 파이썬] #15650: N과 M(2)

www.acmicpc.net/problem/15650

 

15650번: N과 M (2)

한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해

www.acmicpc.net

 

[정답]

 

1. 두 수를 입력받아 N,M을 정의한다.

2. 1부터 N까지의 자연수 중에서 고르는 문제니까 수 1~N을 list에 넣는다.

3. itertools 모듈의 combinations() 함수를 사용하여 중복을 제외한 순서 상관없는 조합을 구한다.

4. for문을 돌면서 중복을 제외한 순서 상관없는 조합을 차례대로 출력한다.

 

이 문제는 #15649:N과 M(1)의 연장선 문제이다.

#15649:N과 M(1) → 중복을 제외한 순열 구하는 문제 → permutations() 함수 사용 

#15650:N과 M(2) → 중복을 제외한 순서 상관없는 조합 구하는 문제 → combinations() 함수 사용

 


[itertools 모듈에 대한 자세한 설명]

https://heewon9809.tistory.com/193

 

백준 #15649

www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열

heewon9809.tistory.com