15655

이연희·2022년 6월 10일
0

Algorithm

목록 보기
7/9
import sys
input=sys.stdin.readline
n,m=map(int,input().split())
arr=list(map(int,input().split()))
arr.sort()
s=[]
def dfs(depth):
    if len(s)==m:
        print(' '.join(map(str,s)))
        return 
    for i in range(n):
        if depth==0 or s[depth-1]<arr[i]:
            s.append(arr[i])
            dfs(depth+1)
            s.pop()

dfs(0)

depth==0 또는 s[depth-1]<arr[i]인 경우에 s에 숫자 추가
s[depth-1]<arr[i]: s의 직전 원소가 추가할 원소보다 작아야함

profile
공부기록

0개의 댓글