标签:
题意:http://www.rqnoj.cn/problem/95
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3496
代码:
1 #include<cstdio> 2 #include<cmath> 3 #include<cstring> 4 #include<cstdlib> 5 #include<algorithm> 6 using namespace std; 7 #define INF 0x3f3f3f3f 8 int main() 9 { 10 int tt; 11 scanf("%d",&tt); 12 while(tt--) 13 { 14 int n,m,l,dp[105][1005]={0},t[105]={0},v[105]={0}; 15 scanf("%d%d%d",&n,&m,&l); 16 for(int i=0;i<n;i++) 17 { 18 scanf("%d%d",&t[i],&v[i]); 19 } 20 int mx=0; 21 for(int i=0;i<n;i++) 22 { 23 for(int j=min(m,i+1);j>=1;j--) 24 { 25 for(int k=l;k>=t[i];k--) 26 { 27 if(dp[j-1][k-t[i]]!=0||j==1) 28 dp[j][k]=max(dp[j][k],dp[j-1][k-t[i]]+v[i]); 29 if(dp[j][k]>mx&&j==m) 30 mx=dp[j][k]; 31 } 32 } 33 } 34 printf("%d\n",mx); 35 } 36 }
标签:
原文地址:http://www.cnblogs.com/wwdf/p/5448837.html