Skip to content

Latest commit

 

History

History
37 lines (29 loc) · 734 Bytes

0205 김다현.md

File metadata and controls

37 lines (29 loc) · 734 Bytes
✨ 접근법
1. 9, 7, 9, 1 => 1, 7, 9 
2. 1-1 / 1-7 / 1-9 / 7-1 / 7-7 / 7-9 이런식으로 추가된다.
3. 하지만 오름차순이어야하므로 cand[-1] <= lst[i] 로직 추가해줘야함.
4. answer를 따로 출력하지 않고 append하기전에 출력해주기 !
'''
111428kb / 144ms
'''
import sys

input = sys.stdin.readline

n,m = map(int, input().split())
lst = list(map(int, input().strip().split()))
lst = sorted(set(lst))

answer=[]


def back(cand, k):
    global answer

    if k == 0:
        print(*cand)
        return
    
    for i in range(len(lst)):
        if k==m or cand[-1] <= lst[i]:
            cand.append(lst[i])
            back(cand, k-1)
            cand.pop()

back([], m)