알고리즘

[백준] 2798 블랙잭

유노비 2023. 10. 17. 22:27
반응형
import itertools

n, m = map(int, input().split())
card = list(map(int, input().split()))

result = -1

perm = itertools.combinations(card, 3) # list 에서 r개 선택하는 조합 만들어서 iteration 객체로 반환(=조합이란 서로 다른 n개중에 r개를 선택하는 경우의 수를 의미함. 이때,순서는 상관 없음)
for i,j,k in perm:
    add_card = i + j + k
    if (add_card <= m) & (result < add_card): # 3가지 card 의 합이 m 을 넘지않으면서, 이전 조합보다 큰 수 일 경우
        result = add_card

print(result)
반응형