22-1 하계 모각코

TIL:: 0824_ boj 2156

ganni_2 2022. 8. 25. 15:19

https://www.acmicpc.net/problem/2156 

 

2156번: 포도주 시식

효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규

www.acmicpc.net

 

 

n = int(input())
wine_list = [int(input()) for x in range(n)]

dp = [0]
dp.append(wine_list[0])
if(n > 1):
    dp.append(wine_list[0] + wine_list[1])

for i in range(3, n + 1):
    case_1 = wine_list[i - 1] + dp[i - 2]
    case_2 = wine_list[i - 1] + wine_list[i - 2] + dp[i - 3]
    case_3 = dp[i - 1]
    max_value = max(case_1, case_2, case_3)
    
    dp.append(max_value)
    
print(dp[n])

 

코드 복기할 때 유의점:

 

연속 3잔을 마시지 않아야 하므로

1 : 이번 포도주를 먹고 이전 포도주를 먹지 않은 경우
2 : 이번 포도주를 먹고 이전 포도주도 먹은 경우
3 : 이번 포도주를 먹지 않아야 하는 경우

 

-> 이렇게 세가지 경우를 고려하여 max 도출!

'22-1 하계 모각코' 카테고리의 다른 글

TIL 0820:: boj 2579  (0) 2022.08.20
TIL 0817:: boj 5566  (0) 2022.08.20
TIL 0814:: boj 11048  (0) 2022.08.14
TIL::0810_boj 2210  (0) 2022.08.11
TIL::0806_boj 16918  (0) 2022.08.07