hdu4502

来源:互联网 发布:网络接入设备中继器 编辑:程序博客网 时间:2024/05/07 01:29

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

dp[i]=max(dp[j]+dp[j+1][i])  j<i;

#include<iostream>#include<cstdio>#include<cstring>using namespace std;int a[105][105];int dp[105];int main(){int t;scanf("%d",&t);for(;t--;){int m,n;scanf("%d%d",&m,&n);memset(dp,0,sizeof(dp));memset(a,0,sizeof(a));int i;for(i=0;i<n;i++){int t1,t2,t3;scanf("%d%d%d",&t1,&t2,&t3);if(t1>m||t2>m)continue;if(t3>a[t1][t2])a[t1][t2]=t3;}for(i=1;i<=m;i++){for(int j=0;j<=i;j++){dp[i]=max(dp[i],dp[j]+a[j+1][i]);}}printf("%d\n",dp[m]);}}