조합 문제 N개 중에 M개 뽑기!
순서 X, 중복 X
n, m = map(int, input().split())
arr = list(map(int, input().split()))
arr.sort()
ans = []
def print_ans():
for i in range(n):
if ans[i] == 1:
print(arr[i], end=" ")
print()
def choose(curr, cnt):
if cnt >= n:
if curr == m:
# print("cnt : {}, curr: {}".format(cnt, curr))
print_ans()
return
ans.append(1)
choose(curr+1, cnt+1)
ans.pop()
ans.append(0)
choose(curr, cnt+1)
ans.pop()
choose(0, 0)
https://alphaca202.tistory.com/11
'CS > 알고리즘' 카테고리의 다른 글
[알고리즘] 이진탐색이란? + 백준 2805번 나무 자르기 문제 (0) | 2024.12.19 |
---|---|
[카테부] 코테스터디 2주차 - N과 M(7) (백준 15656) (0) | 2024.08.13 |
[카테부] 코테스터디 2주차 - N과 M(5) (백준 15654) (0) | 2024.08.13 |
[카테부] 코테스터디 1주차 - 배열 합치기 (백준 11728) (0) | 2024.08.09 |
[카테부] 코테스터디 2주차 - 부분합 (백준 1806) (0) | 2024.08.07 |