完全背包与01背包的区别就是 01背包只有一次, 而完全背包有无限 我的01背包 完全背包 dp[i-1][j - k*weight[i]] +k*value[i] 经历了01背包,那么前面这个式子就很好理解了,k就代表无限个。 照例,先来一份最朴实无华的递推: 三重循环呀~ k最坏的情况是0~W ...
分类:
其他好文 时间:
2018-05-12 19:17:35
阅读次数:
197
背包3 背包3 Time Limit: 2000/1000ms (Java/Others) Time Limit: 2000/1000ms (Java/Others) Problem Description: 有n种(每一种有无数个)重量和价值分别为Wi,Vi的物品,现从这些物品中挑选出总量不超过 ...
分类:
其他好文 时间:
2018-05-06 18:54:54
阅读次数:
171
寒冰王座 寒冰王座 Time Limit: 2000/1000ms (Java/Others) Time Limit: 2000/1000ms (Java/Others) Problem Description: 不死族的巫妖王发工资拉,死亡骑士拿到一张N元的钞票(记住,只有一张钞票),为了防止自己 ...
分类:
其他好文 时间:
2018-05-06 16:25:26
阅读次数:
164
我对于dp的使用仍然很不熟练,总结一下各种背包梳理一下。 01背包 完全背包 w很大的01背包 w很大的完全背包 多重背包 复杂度O(nWlog(m))。 算法思想是可以利用1,2,4,…,2k+a来表示一个数,因此,可以把m个相同物品看作是log(m)种不同的物品做01背包求解。 总之mi=1+2 ...
分类:
其他好文 时间:
2018-05-04 17:07:43
阅读次数:
147
#include #include #include using namespace std; int dp[110][110]; int n,m,k,s; int w[110]; int val[110]; int main () { ios::sync_with_stdio(false); wh... ...
分类:
其他好文 时间:
2018-05-03 22:11:39
阅读次数:
160
是时候复习一波背包了 完全背包裸题 cpp include include using namespace std; int m,n,a[30]; long long f[10005]; int main() { scanf("%d%d",&m,&n); for(int i=1;i ...
分类:
其他好文 时间:
2018-05-03 19:57:27
阅读次数:
176
题目:Lili有很多不同面值的硬币,不同面值的硬币的重量也是不同的,现在知道了这堆硬币中含有的硬币的种类和面值,以及这堆硬币的总重量,你能算出Lili至少有多少钱么。。 把max改成min就好了。。 话说其实对完全背包理解不深刻T_T,凭印象打上去的码 include include include ...
分类:
其他好文 时间:
2018-05-01 14:11:15
阅读次数:
137
题目描述 Description 在现实生活中,我们经常遇到硬币找零的问题,例如,在发工资时,财务人员就需要计算最少的找零硬币数,以便他们能从银行拿回最少的硬币数,并保证能用这些硬币发工资。 我们应该注意到,人民币的硬币系统是100,50,20,10,5,2,1,0.5,0.2,0.1,0.05,0 ...
分类:
其他好文 时间:
2018-04-27 02:28:48
阅读次数:
161
题目描述 LiYuxiang是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同种类的草药,采每一种都需要一些时间,每一种也有它自身的价值。我会给你一 ...
分类:
其他好文 时间:
2018-04-22 21:42:44
阅读次数:
212
Piggy-Bank Before ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes f ...
分类:
其他好文 时间:
2018-04-18 10:30:14
阅读次数:
182