[Python] 백준15654 N과 M (5)
문제
예제 입력
코드
import sys
from itertools import permutations
n, m = map(int, input().split())
arr = list(map(int, sys.stdin.readline().split()))
arr.sort()
res = list(permutations(arr, m))
for lst in res:
for num in lst:
print(num, end=' ')
print()
설명
파이썬을 통해서 사용자로부터 입력받아 순열을 사용하여 N과 M (5)를 구현했습니다.
정리
import sys
n, m = map(int, input().split())
arr = list(map(int, sys.stdin.readline().split()))
arr.sort()
res = []
def backt():
if len(res) != m:
for i in arr:
if i not in res:
res.append(i)
backt()
res.pop()
else :
print(*res)
backt()
그 외에도 백트래킹알고리즘을 사용하여 해결할 수 있습니다.