We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 31a478c commit e9f2a5aCopy full SHA for e9f2a5a
1 file changed
심수연/4주차/260121.py
@@ -0,0 +1,32 @@
1
+# https://www.acmicpc.net/problem/2156
2
+
3
+import sys
4
+input = sys.stdin.readline
5
6
+n = int(input())
7
+wine = [int(input()) for _ in range(n)]
8
9
+dp = [0] * n
10
11
+# dp[i] = i번째 잔까지 고려했을 때 마실 수 있는 최대 포도주 양
12
13
+dp[0] = wine[0] # 첫 잔은 마시는 게 최댓값
14
15
+if n > 1:
16
+ dp[1] = wine[0] + wine[1] # 두 잔 가능
17
18
+if n > 2:
19
+ dp[2] = max(
20
+ wine[0] + wine[1], # 2 빼고 먹기
21
+ wine[0] + wine[2], # 1 빼고 먹기
22
+ wine[1] + wine[2], # 0 빼고 먹기
23
+ )
24
25
+for i in range(3, n):
26
+ dp[i] = max(
27
+ dp[i - 1], # i번째 잔 안 마시기
28
+ dp[i - 2] + wine[i], # i-2 (O), i-1 (X), i (O)
29
+ dp[i - 3] + wine[i - 1] + wine[i] # i-3 (O), i-2 (X), i-1 (O), i (O)
30
31
32
+print(dp[n - 1]) # 배열이 0부터 시작하니까 n - 1
0 commit comments