BOJ/Python

백준 15649번 N과 M (1) 파이썬

띵지니어 2022. 3. 16. 22:30

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

 

15649번: N과 M (1)

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

www.acmicpc.net

 

내 답안

from itertools import permutations

N, M = map(int, input().split())
A = [i for i in range(1, N + 1)]

for i in permutations(A, M):
    for j in i:
        print(j, end=' ')
    print()

 

 

  • permutations (iterable, r)

파이썬 itertools 모듈에는 많은 함수들이 있는데

그중 permutation는 iterable에서 원소 개수가 r 개인 순열을 뽑는 것이다.

 

이 문제는 라이브러리를 이용하여 쉽게 해결하였다.