[백준/파이썬] 2798번 : 블랙잭 풀이

문제

문제 풀이

n, m = map(int, input().split())  # n개의 카드가 주어지고 기준이 되는 수 m을 입력받는다.
# 플레이어는 세 장의 카드를 골라 m을 넘지 않으면서 최대한 가까운 카드의 합을 완성해야한다.
# 완전탐색문제
arr = list(map(int, input().split()))
# 카드를 입력받는다.
result = 0

# 주어진 카드 갯수만큼 경우를 고려하여 반복을 돌린다. 이 때 세장을 선택하므로 하위 반복문도 세번 돌리도록 한다.
for i in range(n):
    for j in range(i+1, n):
        for k in range(j+1, n):
            if arr[i] + arr[j] + arr[k] > m:
                continue
            else:
                result = max(result, arr[i] + arr[j] + arr[k])

print(result)

좋은 웹페이지 즐겨찾기