같은 수가 여러번 주어져도 무시하고 중복순열로 뽑으면 된다.
따라서 set
을 이용해서 중복을 제거하고 다시 list
로 바꿔서 그냥 중복순열을 뽑아냈다.
N, M = map(int, input().split())
numbers = list(map(int, input().split()))
numbers = list(set(numbers))
numbers.sort()
element = []
def dfs(depth):
if depth == M:
print(*element)
return
for i in range(len(numbers)):
element.append(numbers[i])
dfs(depth + 1)
element.pop()
dfs(0)
'PS' 카테고리의 다른 글
[BOJ] 15666번 N과 M (12) 문제 - Python (0) | 2021.03.04 |
---|---|
[BOJ] 15664번 N과 M (10) 문제 (0) | 2021.03.03 |
[BOJ] 2153번 소수 단어 문제 (0) | 2021.01.19 |
BOJ - 2133번 타일 채우기 (0) | 2020.09.08 |
BOJ - 1699번 제곱수의 합 (0) | 2020.09.08 |