01背包式最简单的背包问题,书上是由深度优先搜索的记忆化搜索的递归实现到处递推的解决方法就是01背包,把所有i和j的情况都记下来,总共不过n*v种情况。
而01背包之2是简单01背包变换对象之后的做法。
题目描述如下:
有n个价值和花费分别为weight[i]和cost[i]的物品,把这些物品装进容量为V的背包中,求最大价值?
但是现在条件是:V<=109,weight[i]<100,n<1...
分类:
其他好文 时间:
2015-04-11 14:51:58
阅读次数:
129
就是一简单的完全背包问题,秒杀。代码如下:/*
ID:15674811
LANG:C++
PROG:inflate
*/#include
#include
#include
using namespace std;#define maxn 11000int main()
{
freopen("inflate.in","r",stdin);...
分类:
其他好文 时间:
2015-04-10 18:05:59
阅读次数:
176
http://soj.sysu.edu.cn/show_problem.php?pid=1001&cid=1769其实感觉多重背包比01背包和完全背包都要难,每件物品的数量可能不止一件,还是求放入背包的物品的最大价值。在背包九讲中,给出的动态转移方程为:f[i][v]=max{f[i-1][v-k*...
分类:
其他好文 时间:
2015-04-09 13:20:21
阅读次数:
169
完全背包:有n种物品,每种物品有无限个,每个物品的重量为w[i],价值为v[i]。现在有一个背包,它所能容纳的重量为C,问:你的背包所能带走的最大价值是多少?之前01背包分析过了,如果是顺序的话,就表示同一物品可以多次放入!这就是完全背包! 1 #include 2 3 using namesp.....
分类:
其他好文 时间:
2015-04-08 12:58:46
阅读次数:
109
sicily 1146 采药还是用这题来说吧,对01背包的分析看我之前那篇就好了http://www.cnblogs.com/dominjune/p/4383762.html这里主要是想改进一下二维数组的做法,用一维数组来实现01背包,也叫做滚动数组!先借用某位大牛的一句话:“01背包在二维数组上操...
分类:
其他好文 时间:
2015-04-08 12:47:24
阅读次数:
137
对于动态规划,每个刚接触的人都需要一段时间来理解,特别是第一次接触的时候总是想不通为什么这种方法可行,这篇文章就是为了帮助大家理解动态规划,并通过讲解基本的01背包问题来引导读者如何去思考动态规划。本文力求通俗易懂,无异性,不让读者感到迷惑,引导读者去思考,所以如果你在阅读中发现有不通顺的地方,让你产生错误理解的地方,让你难得读懂的地方,请跟贴指出,谢谢!
----第一节----初识动态...
分类:
其他好文 时间:
2015-04-07 10:05:38
阅读次数:
116
本文包含的内容: 问题描述基本思路(和完全背包类似)转换为01背包问题求解(直接利用01背包)---------------------------------------------1、问题描述已知:有一个容量为V的背包和N件物品,第i件物品最多有Num[i]件,每件物品的重量是weight[i]...
分类:
其他好文 时间:
2015-04-07 01:53:04
阅读次数:
112
文章作者:Yx.Ac 文章来源:勇幸|Thinking(http://www.ahathinking.com) 转载请注明,谢谢合作。---前面已经回顾了01背包和完全背包,本节回顾多重背包的几种实现形式,主要有以下几方面内容:==多重背包问题定义 & 基本实现==多重背包二进制拆分实现==防火防....
分类:
其他好文 时间:
2015-04-06 21:45:30
阅读次数:
193
文章作者:Yx.Ac 文章来源:勇幸|Thinking(http://www.ahathinking.com) 转载请注明,谢谢合作。---前面回顾了01背包,在此基础上本节回顾完全背包的几种实现形式,主要有以下几方面内容:==完全背包问题定义 & 基本实现==完全背包二进制拆分思想==完全背包使....
分类:
其他好文 时间:
2015-04-06 21:41:01
阅读次数:
122