n, m = map(int, input().split())
l = list(map(int, input().split()))
q = 0
for i in range(n):
for j in range(i + 1, n):
for k in range(j + 1, n):
s = l[i] + l[j] + l[k]
if s <= m:
q = max(s, q)
else:
continue
print(q)
가장 간단한 방법으로 풀어봤다
모든 숫자를 살펴보고 m 을 넘지 않는 수 중 max 값을 구하는 것이다
'알고리즘' 카테고리의 다른 글
<백준> 2805번 파이썬 알고리즘 (0) | 2021.07.09 |
---|---|
<백준> 2805번 파이썬 알고리즘 (0) | 2021.07.09 |
<백준> 2775번 파이썬 알고리즘 (0) | 2021.07.08 |
<백준> 2292번 파이썬 알고리즘 (0) | 2021.07.08 |
<백준> 2231번 파이썬 알고리즘 (0) | 2021.07.08 |