首页 > 其他 > 详细

经典01背包问题 HDU2602

时间:2015-07-22 20:49:19      阅读:228      评论:0      收藏:0      [点我收藏+]
 1 #include <cstring>
 2 #include <iostream>
 3 #include <algorithm>
 4 
 5 using namespace std;
 6 
 7 int dp[1010];
 8 int v[1010];
 9 int w[1010];
10 
11 int main()
12 {
13     int t;
14     cin>>t;
15     while(t--)
16     {
17         long long int n,tv;
18         cin>>n>>tv;
19         for(int i=0;i<n;i++)
20             cin>>v[i];
21         for(int i=0;i<n;i++)
22             cin>>w[i];
23         memset(dp,0,sizeof(dp));
24         for(int i=0;i<n;i++)
25         {
26             for(int j=tv;j>=w[i];j--)
27             {
28                 dp[j]=max(dp[j-w[i]]+v[i],dp[j]);
29             }
30         }
31         cout<<dp[tv]<<endl;
32     }
33     return 0;
34 }

 

经典01背包问题 HDU2602

原文:http://www.cnblogs.com/wsruning/p/4668425.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!