luogu1208 尼克的任务

倒着推就是了

#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
int n, k, p, t, dp[10005];
vector<int> a[10005];//是他,就是他!我们的英雄vector!
int main(){
	cin>>n>>k;
	for(int i=1; i<=k; i++){
		scanf("%d %d", &p, &t);
		a[p].push_back(t);
	}
	for(int i=n; i>=1; i--){
		if(a[i].size()){
			for(int j=0; j<a[i].size(); j++)
				dp[i] = max(dp[i], dp[i+a[i][j]]);
		}
		else dp[i] = dp[i+1] + 1;
	}
	cout<<dp[1]<<endl;
	return 0;
}
原文地址:https://www.cnblogs.com/poorpool/p/8056611.html