hdu 2602 Bone Collector
来源:互联网 发布:手机淘宝 代理 编辑:程序博客网 时间:2024/06/11 21:42
网址:点击打开链接
Bone Collector
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 61757 Accepted Submission(s): 25729
Problem Description
Many years ago , in Teddy’s hometown there was a man who was called “Bone Collector”. This man like to collect varies of bones , such as dog’s , cow’s , also he went to the grave …
The bone collector had a big bag with a volume of V ,and along his trip of collecting there are a lot of bones , obviously , different bone has different value and different volume, now given the each bone’s value along his trip , can you calculate out the maximum of the total value the bone collector can get ?
The bone collector had a big bag with a volume of V ,and along his trip of collecting there are a lot of bones , obviously , different bone has different value and different volume, now given the each bone’s value along his trip , can you calculate out the maximum of the total value the bone collector can get ?
Input
The first line contain a integer T , the number of cases.
Followed by T cases , each case three lines , the first line contain two integer N , V, (N <= 1000 , V <= 1000 )representing the number of bones and the volume of his bag. And the second line contain N integers representing the value of each bone. The third line contain N integers representing the volume of each bone.
Followed by T cases , each case three lines , the first line contain two integer N , V, (N <= 1000 , V <= 1000 )representing the number of bones and the volume of his bag. And the second line contain N integers representing the value of each bone. The third line contain N integers representing the volume of each bone.
Output
One integer per line representing the maximum of the total value (this number will be less than 231).
Sample Input
15 101 2 3 4 55 4 3 2 1
Sample Output
14
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int a[1005];int b[1005];int dp[1005][1005];int main(){ int T; scanf("%d",&T); while(T--) { memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(dp,0,sizeof(dp)); int i,n,v,j; scanf("%d%d",&n,&v); for(i=1; i<=n; i++) scanf("%d",&a[i]); for(i=1; i<=n; i++) scanf("%d",&b[i]); for(i=0; i<=v; i++) { if(i<b[n]) dp[n][i]=0; else dp[n][i]=a[n]; } for(i=n-1; i>=1; i--) { for(j=0; j<=v; j++) { if(j<b[i]) dp[i][j]=dp[i+1][j]; else dp[i][j]=max(dp[i+1][j],dp[i+1][j-b[i]]+a[i]); } } printf("%d\n",dp[1][v]); /* for(i=0;i<=n;i++) { for(j=0;j<=v;j++) printf("%d ",dp[i][j]); printf("\n"); }*/ } return 0;}
阅读全文
0 0
- HDU 2602 Bone Collector
- hdu 2602 Bone Collector
- hdu 2602 Bone Collector
- hdu 2602 Bone Collector
- HDU 2602 - Bone Collector
- HDU 2602 Bone Collector
- hdu 2602 Bone Collector
- HDU 2602 Bone Collector
- hdu 2602 Bone Collector
- hdu 2602 Bone Collector
- Hdu 2602 - Bone Collector
- hdu 2602 Bone Collector
- hdu 2602 Bone Collector
- Hdu 2602 Bone Collector
- Hdu 2602 Bone Collector
- hdu 2602 Bone Collector
- hdu - 2602 - Bone Collector
- hdu 2602 Bone Collector
- 楔子
- JBPM学习(一):实现一个简单的工作流例子全过程
- 安装svn的两种方式
- POJ 2531 Network Saboteur
- 如何两周学会Python 第00天
- hdu 2602 Bone Collector
- 第四届“图灵杯”- D题
- Java7并发编程指南——第七章:定制并发类
- 为什么redis适合操作小数据,memcache适合操作大数据
- IC设计基础系列之CDC篇10:跨时钟域信号传输(二)——数据信号篇
- 第一章 大神归位
- 解决问题最简单的方法
- 第二章 求生之路
- linux系统中如何进入退出vim编辑器