https://www.acmicpc.net/problem/14501
"""
"""
from sys import stdin
input = stdin.readline
n = int(input())
s = [ list(map(int, input().split())) for _ in range(n) ]
dp = [0] * (n+1)
for i in range(n-1, -1, -1):
if i + s[i][0] > n: # 해당 날짜에 진행을 못하면 다음날의 값을 불러옴
dp[i] = dp[i+1]
else:
dp[i] = max(s[i][1] + dp[i + s[i][0]], dp[i+1]) # 해당 날짜와 그 날짜의 일수만큼 뒤의 이익이랑, 다음날의 값중 최대값
print(max(dp))
DP를 뒤에서 부터 반복문 돌리는게 중요