返回题解分享
讨论 / 题解分享/ 帖子详情

充电 - 题解

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int inf=1e7+10;
int n,dp[inf],a[inf],b[inf];
signed main(){
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++)cin>>a[i]>>b[i];
	for(int i=n;i>=1;i--){
		dp[i]=max(dp[i+1],dp[i+b[i]+1]+a[i]);
		//cout<<i<<":"<<dp[i]<<endl; 
	}
	cout<<dp[1];
	return 0;
}
0 回复 0 转发 0 喜欢 5 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!