博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
01背包
阅读量:5024 次
发布时间:2019-06-12

本文共 1029 字,大约阅读时间需要 3 分钟。

 

乍一看,以为是最简单的01背包,但是要注意的是,这个的质量太大啦,但是发现他的价值却是非常少的,所以我们换一种思路

1 正确代码 2 #include
3 using namespace std; 4 5 int maxn=100000000; 6 7 int dp[5005];///价值为i所需的最小容量 8 int w[505],val[105]; 9 10 int main()11 {12 freopen("in.txt","r",stdin);13 int n,b;14 int t;15 cin>>t;16 while(t--)17 {18 int valsum=0;19 cin>>n>>b;20 for(int i=0; i
>w[i]>>val[i];23 valsum+=val[i];24 }25 26 for(int i=1; i<=valsum; i++)27 dp[i]=maxn;28 29 dp[0]=0;30 31 for(int i=0; i
=val[i]; j--)34 {35 dp[j]=min(dp[j],dp[j-val[i]]+w[i]);36 cout<
<
0; i--)41 {42 43 if(dp[i]<=b)44 {45 s=i;46 break;47 }48 }49 cout<
<
View Code

 

转载于:https://www.cnblogs.com/shangjindexiaoqingnian/p/6684875.html

你可能感兴趣的文章
jQuery技巧大放送
查看>>
字符串转换成JSON的三种方式
查看>>
Hive时间函数笔记
查看>>
clojure-emacs-autocomplete
查看>>
一个自己写的判断2个相同对象的属性值差异的工具类
查看>>
10 华电内部文档搜索系统 search03
查看>>
[HIHO1149]回文字符序列(dp)
查看>>
[HDU1402]A * B Problem Plus(FFT)
查看>>
[CF803C] Maximal GCD(gcd,贪心,构造)
查看>>
逆时针旋转的矩阵变换
查看>>
第10周15/16/17
查看>>
【数据库】SQL两表之间:根据一个表的字段更新另一个表的字段
查看>>
四六级作文常见错误解析(转载)
查看>>
Tomcat
查看>>
./是当前目录 ../是当前的上一级目录。上上级就是../../一般绝对路径时候常用...
查看>>
linux支持FTP和SFTP服务【1】
查看>>
树的递归与非递归遍历方法
查看>>
每天一个Linux命令(6):rmdir命令
查看>>
oracle连接的三个配置文件(转)
查看>>
Vim配置文件(Vimrc)
查看>>