(백준) 15663 – N and M (9) (Python)

쉬운 목차

문제

15663: N과 M (9) (acmicpc.net)

15663호: N과 M (9)

문제의 조건을 만족하는 일련의 숫자를 한 줄에 하나씩 인쇄합니다.
중복 시퀀스는 한 번 이상 인쇄해서는 안 되며 각 시퀀스는 공백으로 구분하여 인쇄해야 합니다.
시퀀스는 알파벳 오름차순으로 인쇄됩니다.

www.acmicpc.net

설명

파이썬의 위력을 보여주는 문제입니다.

시퀀스 A가 주어지면 M 번호를 선택할 수 없다고 말했습니다.

itertools의 순열 기능을 사용하여 순열을 찾고 중복을 제거하는 기능을 설정하십시오.

print(*i) 는 배열의 요소를 분해하는 것을 의미합니다.

from sys import stdin
from itertools import permutations
input = lambda : stdin.readline().strip()

N, M = map(int, input().split())
A = list(map(int, input().split()))

new_A = sorted(set(permutations(A, M)))

for i in new_A :
    print(*i)