Skip to content

Commit fe8da4e

Browse files
authored
Create 3.py
1 parent f216efb commit fe8da4e

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

16/3.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
n = int(input())
2+
t = []
3+
p = []
4+
dp = [0] * (n + 1)
5+
max_value = 0
6+
7+
for _ in range(n):
8+
x, y = map(int, input().split())
9+
t.append(x)
10+
p.append(y)
11+
12+
# 리스트를 뒤에서부터 거꾸로 확인
13+
for i in range(n - 1, -1, -1):
14+
time = t[i] + i
15+
# 상담이 기간 안에 끝나는 경우
16+
if time <= n:
17+
# 점화식에 맞게, 현재까지의 최고 이익 계산
18+
dp[i] = max(p[i] + dp[time], max_value)
19+
max_value = dp[i]
20+
# 상담이 기간을 벗어나는 경우
21+
else:
22+
dp[i] = max_value
23+
24+
print(max(dp))

0 commit comments

Comments
 (0)