1. 程式人生 > >吉哥系列故事——臨時工計劃

吉哥系列故事——臨時工計劃

http://acm.hdu.edu.cn/showproblem.php?pid=4502

#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<vector>
using namespace std;
int main()
{
	int i,j,s,n,e,m,dp[1010],var;
	vector<int> c[1010];
	vector<int> w[1010];
	int T;
	scanf("%d",&T);
	while(T--){
	scanf("%d%d",&m,&n);
	for(i=0;i<=m;i++)
	{
		dp[i]=0;
		c[i].clear();
		w[i].clear();
	}
	for(i=0;i<n;i++){
		scanf("%d%d%d",&s,&e,&var);
		if(e>m) continue;
		c[e].push_back(s);
		w[e].push_back(var);
	}
	for(i=1;i<=m;i++)
	{
		dp[i]=dp[i-1];
		int k=c[i].size();
		for(j=0;j<k;j++)
			dp[i]=max(dp[i],dp[c[i][j]-1]+w[i][j]);
	}
	printf("%d\n",dp[m]);
	}
}