알고리즘/백준 문제풀이
[백준] 2798 블랙잭 파이썬 풀이 (브루트포스)
자바칩 프라푸치노
2021. 6. 24. 13:48
문제
- 카드 3장을 뽑아 M을 넘지 않으면서 M에 최대한 가까운 합을 만들어라
문제 풀이
- 한개씩 카드를 뽑아서 합이 M보다 크면 넘어가고
- M과 같거나 같으면 그 합이 가장 큰 것을 result에 담아서 출력한다.
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
N,M = map(int, input().split())
numbers=list(map(int, input().split()))
# print(numbers)
result = 0
for i in range(N):
for j in range(i+1, N):
for k in range(j+1, N):
if numbers[i] + numbers[j] + numbers[k] >M:
continue
else:
result = max(result, numbers[i]+ numbers[j]+numbers[k])
print(result)
|
cs |
728x90