2156 - 포도주 시식

LeeKyoungChang·2022년 2월 6일
0

Algorithm

목록 보기
27/203
post-thumbnail

📚 2156 - 포도주 시식

포도주 시식

 

참고 소스

n = int(input())

dp = [0] * (n + 1)

arr = [0]

for _ in range(n):
   arr.append(int(input()))

# ① 현재 포도주와 이전 포도주를 마시고 전전 포두주는 마시지 않는다. ( wine[i]+wine[i-1]+d[i-3] )
# ② 현재 포도주와 전전 포도주를 마시고 이전 포도주는 마시지 않는다. ( wine[i]+d[i-2] )
# ③ 현재 포도주를 마시지 않는다. ( d[i-1] )

# d[i-1]에 해당 케이스를 포함한 최댓값이 저장되어 있다.


dp[1] = arr[1]

if n >= 2:
   dp[2] = arr[1] + arr[2]

   for idx in range(3, n + 1):
       dp[idx] = max(dp[idx-1], dp[idx - 2] + arr[idx], dp[idx - 3] + arr[idx - 1] + arr[idx])

print(dp[n])

# 참고 : https://hongcoding.tistory.com/48



 

참고 주소 : https://hongcoding.tistory.com/48

 

profile
"야, (오류 만났어?) 너두 (해결) 할 수 있어"

0개의 댓글