Notice
Recent Posts
Recent Comments
기록과 정리의 공간
[알고리즘] 백준 2798번 : 블랙잭 본문
백준 2798번 : 블랙잭 (문제 링크)
- 사용 언어 : 파이썬(Python)
- 문제 유형 : 배열, 완전탐색
- 난이도 : 하
소스코드
import sys
n, m = map(int, sys.stdin.readline().split())
cards = list(map(int, sys.stdin.readline(). split()))
sum_cards = 0
for i in range(n-2):
for j in range(i+1, n-1):
for k in range(j+1, n):
temp = cards[i] + cards[j] + cards[k]
if temp <= m and sum_cards < temp:
sum_cards = temp
print(sum_cards)
설명
카드를 3장
골라야 하므로, 삼중반복문
을 사용하여 가능한 모든 조합을 탐색한다. 3장의 합이 m
을 넘지 않는 값들 중 최대값
이 답이 된다. temp
변수에 현재 조합의 합을 저장하고, 그 값이 m
을 넘지 않으면서 sum_cards
보다 크다면, sum_cards
는 temp
가 된다. 반복문이 종료되면 sum_cards
는 m
을 넘지 않는 값들 중 최대값
을 가지고 있게 된다.
'문제풀이 > 백준(BOJ)' 카테고리의 다른 글
[알고리즘] 백준 1766번 : 문제집 (0) | 2020.08.05 |
---|---|
[알고리즘] 백준 1991번 : 트리 순회 (0) | 2020.07.17 |
[알고리즘] 백준 2212번 : 센서 (4) | 2020.07.17 |
[알고리즘] 백준 4195번 : 친구 네트워크 (0) | 2020.07.17 |
[알고리즘] 백준 2920번 : 음계 (0) | 2020.07.17 |
Comments