#include #include #include #include #include using namespace std; int d[30][30005]; //d[i][j] i件中,j重量的物品 ,价格最高 int v[30],w[30]; int Max(int a,int b) {... ...
分类:
其他好文 时间:
2018-10-22 22:19:48
阅读次数:
175
#include #include #include #include #include using namespace std; struct HY { int u,v; }hy[10005]; bool cmp(HY a,HY b) { if(a.v == b.v) return a.u>b.u... ...
分类:
其他好文 时间:
2018-10-22 22:15:22
阅读次数:
244
题意 给n个币的价值和其数量,问能组合成$1 m$中多少个不同的值。 分析 对$c[i] a[i] =m$的币,相当于完全背包;$c[i] a[i]=w; i) { dp[i] = Math.max(dp[i], dp[i w]+v); } } static void complete(int w, ...
分类:
其他好文 时间:
2018-10-22 01:12:21
阅读次数:
142
P1941 飞扬的小鸟 细节题 上升是完全背包 下降是01背包 (数组访问越界本机怎么能过???(大雾)) 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cctype> 5 #define re regi ...
分类:
其他好文 时间:
2018-10-19 13:59:27
阅读次数:
212
背包方案数模板题练习 第一道题是另一道也叫做“砝码称重”的前置技能,第二道题是我搜背包方案数的时候出来的。 两道题有一点区别,就是多重(01)背包和完全背包。 第一道题因为数据水,所以多重背包也能过。但是也要学会如何写多重背包!!! 第二道题是完全背包,每一种货币可以拿无穷多次。 这种背包可以理解为 ...
分类:
其他好文 时间:
2018-10-17 00:14:28
阅读次数:
132
"P1450 [HAOI2008]硬币购物" 完全背包+容斥 ~~真是秒呀~~ 方案数统计。如果无法直接计算出来,可以尝试使用容斥原理进行拼凑。 你看,这个题中的对答案有影响的元素只有4个。 $2^n$次方的容斥完全可以做 我们可以使用所有的方案数,减去一个硬币不合法的方案数,加上两个硬币不合法的方 ...
分类:
其他好文 时间:
2018-10-14 13:48:05
阅读次数:
148
其实混合背包就更简单了 有n种物品,背包的容量为V,接下来给出每个物品的重量w[i],价值v[i],数量c[i],如果c[i]为0,表示这种物品有无数件,求最大的价值 显然dp方程分为两种 如果是完全背包则是 dp[j]=max(dp[j],dp[j-w[i]]+v[i]) (j=w[i];j<=V ...
分类:
其他好文 时间:
2018-10-11 12:20:21
阅读次数:
182
5202 自然数拆分Lunatic版 0x50「动态规划」例题 描述 给定一个自然数N,要求把N拆分成若干个正整数相加的形式,参与加法运算的数可以重复。求拆分的方案数 mod 2147483648的结果。1≤N≤4000。 输入格式 一个整数n。 输出格式 输出一个数,即所有方案数因为这个数可能非常 ...
分类:
其他好文 时间:
2018-10-07 16:46:43
阅读次数:
164