[백준 15665] N과 M (11)

Junyoung Park·2022년 7월 6일
0

코딩테스트

목록 보기
491/631
post-thumbnail

1. 문제 설명

N과 M (11)

2. 문제 분석

중복 순열을 뽑는 방법.

3. 나의 풀이

import sys

n, m = map(int, sys.stdin.readline().rstrip().split())
numbers = list(map(int, sys.stdin.readline().rstrip().split()))
numbers.sort()
check = [False for _ in range(n)]
answers = set()

def DFS(cnt, num):
    if cnt == m:
        answers.add(tuple(num))
        return

    for i in range(n):
        DFS(cnt + 1, num + [numbers[i]])

DFS(0, [])
answers = list(answers)
answers.sort()
for answer in answers:
    print(*answer)
profile
JUST DO IT

0개의 댓글