728x90

http://www.acmicpc.net/problem/15657

 

15657번: N과 M (8)

N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열

www.acmicpc.net

 

# 조건

  • N개의 자연수와 자연수 M이 주어질 때 아래 조건 만족하는 길이가 M인 수열 모두 구하라.
    • N개의 자연수 중에서 M개를 고른 수열
    • 같은 수를 여러 번 골라도 된다.
    • 고른 수열은 비내림차순
 

# 접근 방법

 

  • 자기 자신과의 선택도 가능하므로 중복조합 이용해준다.
  • combinations_with_replacement
from itertools import combinations_with_replacement  
  
N, M = map(int, input().split())  
arr = [*map(int, input().split())]  
arr.sort()  
result = list(combinations_with_replacement(arr, M))  
  
for i in result:  
    print(*i)

 

728x90

'ALGORITHM > 수학, 기하학' 카테고리의 다른 글

[백준 3096번] 파이썬 - 영화제  (0) 2023.01.03
[백준 17087번] 파이썬 - 숨바꼭질 6  (1) 2022.12.09
[백준 15654번] N과 M(5)  (0) 2022.11.08
[백준 15652번] N과 M(4)  (0) 2022.11.07
[백준 2407번] 조합  (0) 2022.11.05