티스토리 뷰
https://www.acmicpc.net/problem/2798
2798번: 블랙잭
첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장
www.acmicpc.net


👩💻문제 이해
반복문을 이용해 나올 수 있는 숫자카드의 합의 경우 중 M을 넘지 않으면서 가장 근접한 3장의 카드의 합을 구한다.
👩💻반복문 사용 : 성공🌈
import sys
n, m = map(int, input().split())
res = sys.stdin.readline().split()
sum = 0
min = 0
for i in range(0, n-2):
for j in range(i+1,n-1):
for k in range(j+1, n):
sum = int(res[i]) + int(res[j]) + int(res[k])
if sum <= m and min < sum:
min = sum
print(min)
import sys
n, m = map(int, input().split())
res = sys.stdin.readline().split()
sum = 0
# i번째 숫자 + j번째 숫자 + k번째 숫자
min = 0
# m보다 작거나 같은 합 중 m과 가장 근접한 값
for i in range(0, n-2):
for j in range(i+1,n-1):
for k in range(j+1, n):
sum = int(res[i]) + int(res[j]) + int(res[k])
if sum <= m and min < sum:
min = sum
print(min)
🚀결과🚀

'🦖 Programming > Python' 카테고리의 다른 글
[Python] 백준 알고리즘 7568번 : 덩치 (0) | 2022.09.07 |
---|---|
[Python] 백준 알고리즘 2231번 : 분해합 (0) | 2022.09.07 |
[Python] 백준 알고리즘 9375번 : 패션왕 신해빈 (0) | 2022.09.04 |
[Python] 백준 알고리즘 14425번 : 문자열 집합 (0) | 2022.09.03 |
[Python] 백준 알고리즘 1159번 : 농구 경기 (0) | 2022.09.01 |
댓글