当前位置:网站首页>HDU 2602: Bone Collector ← 0-1背包问题
HDU 2602: Bone Collector ← 0-1背包问题
2022-08-01 14:33:00 【hnjzsyjyj】
【题目来源】
http://acm.hdu.edu.cn/showproblem.php?pid=2602
【题目描述】
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 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.
【数据输出】
One integer per line representing the maximum of the total value (this number will be less than 2^31).
【算法代码】
#include <bits/stdc++.h>
using namespace std;
const int maxn=1005;
int c[maxn][maxn];
int val[maxn],vol[maxn];
int main(){
int t,N,V;
cin>>t;
while(t--){
cin>>N>>V;
for(int i=1;i<=N;i++)
cin>>val[i];
for(int i=1;i<=N;i++)
cin>>vol[i];
for(int i=0;i<=N;i++)
c[i][0]=0;
for(int j=0;j<=V;j++)
c[0][j]=0;
for(int i=1;i<=N;i++)
for(int j=0;j<=V;j++)
if(j<vol[i]) c[i][j]=c[i-1][j];
else c[i][j]=max(c[i-1][j],c[i-1][j-vol[i]]+val[i]);
cout<<c[N][V]<<endl;
}
return 0;
}
/*
in:
1
5 10
1 2 3 4 5
5 4 3 2 1
out:
14
*/
【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/126067759
https://blog.csdn.net/hnjzsyjyj/article/details/125944790
边栏推荐
猜你喜欢
随机推荐
D - I Hate Non-integer Number(背包dp)
JSON数据转换总结(VIP典藏版)
可观测性就是对“监控”的包装?
只知道SQL数据库?又一国产数据库语言诞生了
魔众文档管理系统 v5.0.0
datetime64[ns]转化为datetime
2022-07-29 网工进阶(二十二)BGP-其他特性(路由过滤、团体属性、认证、AS欺骗、对等体组、子路由器、路由最大接收数量)
Timezone setting in MySQL
opencv 保存图片imwrite
使用open3d可视化3d人脸
免费使用高性能的GPU和TPU—谷歌Colab使用教程
从零开始Blazor Server(4)--登录系统
xmind2testcase:高效的测试用例导出工具
什么是混合元编程
final关键字的作用 final和基本类型、引用类型
mysql的基本使用
HTB-Shocker
视频传输协议(常用的视频协议)
牛客刷SQL--7
Range query based on date in MySQL