티스토리 뷰

728x90

https://www.acmicpc.net/problem/15654

 

15654번: N과 M (5)

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

www.acmicpc.net


  • 문제 : 

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

  • N개의 자연수 중에서 M개를 고른 수열

 

 

 


  • 풀이 :

N개의 수들 중 N개를 고르는 경우는 순서가 있는 조합, 즉 순열의 경우이므로 permutations로 N개의 수들 중 M개를 골라 출력하면 된다. 사전순으로 출력하기 위해 주어진 숫자를 정렬 후 조합을 구하였다.

 

 

 

 


  • 소스코드 : 
from itertools import permutations
N,M = map(int,input().split())
nums = sorted(list(map(int,input().split())))
for i in permutations(nums,M):
    print(' '.join(map(str,list(i))))
320x100
댓글
© 2022 WonSeok, All rights reserved