首页 > 其他 > 详细

hud 2602 Bone Collector

时间:2015-10-27 23:34:20      阅读:224      评论:0      收藏:0      [点我收藏+]

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602

思路:典型的01背包

 1 #include<stdlib.h>
 2 #include<time.h>
 3 #include <cstdio>  
 4 #include <cstring>  
 5 #include <cmath>  
 6 #include <cstdlib>  
 7 #include <ctime>  
 8 #include <iostream>  
 9 #include <algorithm>  
10 #include <vector>  
11 #include <queue>  
12 #include <map>  
13 #include <set>  
14 #include <string>  
15 using namespace std;
16 
17 #define N 10005
18 
19 int val[N],vol[N],dp[N];
20 
21 int main()
22 {
23     int num;
24     int n,space;
25     scanf("%d",&num);
26     while(num--)
27     {
28         scanf("%d %d",&n,&space);
29         for(int i=1;i<=n;i++)
30             scanf("%d",&val[i]);
31         for(int j=1;j<=n;j++)
32             scanf("%d",&vol[j]);
33         
34         memset(dp,0,sizeof(dp));
35         for(int i=1;i<=n;i++)
36         {
37              for(int j=space;j-vol[i]>=0;j--)
38              {
39                  dp[j]=max(dp[j],dp[j-vol[i]]+val[i]);
40              }
41 
42         }
43         printf("%d\n",dp[space]);
44     }
45     return 0;
46 } 

 

hud 2602 Bone Collector

原文:http://www.cnblogs.com/pter/p/4915687.html

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