背包
文章平均质量分 61
Grit_ICPC
Dielts
展开
-
【leetCode-DP-完全背包】279. 完全平方数
给定正整数n,找到若干个完全平方数(比如1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。示例1:输入: n = 12输出: 3解释: 12 = 4 + 4 + 4.示例 2:输入: n = 13输出: 2解释: 13 = 4 + 9.题目类似于换零钱(完全背包)见:链接code:class Soluti...原创 2020-01-02 16:01:20 · 223 阅读 · 0 评论 -
【leetCode-DP-完全背包】322. 零钱兑换
完全背包是物品放入背包中没有数量上的限制,而多重背包有数量限制给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回-1。示例1:输入: coins = [1, 2, 5], amount = 11输出: 3解释: 11 = 5 + 5 + 1示例 2:输入: co...原创 2020-01-02 14:53:03 · 262 阅读 · 0 评论 -
【背包九章完全背包】获取最大价值-每件物品可以重复放 (附 优化)
输入4 5 1 22 43 44 5题目:小明有容量m的袋子,有n个物品 物品有价值和体积 每件物品可以重复放入背包,问最多能装多少价值的物品。前两个数为n,m (n为n个物品,m代表有m容量的袋子)完全背包 static int[] v; static int[] w; static int n,W,k; public sta...原创 2019-12-29 12:08:06 · 407 阅读 · 0 评论 -
【背包九章-01背包】获取最大价值 (附 01背包一维数组优化的时候为什么容量要逆序遍历)
输入4 51 22 43 44 5题目:小明有容量m的袋子,有n个物品 物品有价值和体积,问最多能装多少价值的物品。前两个数为n,m (n为n个物品,m代表有m容量的袋子)01背包 static int[] v; static int[] w; static int n,W; public static int dp01(int [...原创 2019-12-28 13:18:29 · 474 阅读 · 0 评论 -
SDUT 2408 Pick apples(完全背包+贪心)2012年"浪潮杯"山东省第三届ACM大学生程序设计竞赛
题目大意:给定3中物品,每种无限多,接下来三行分别为没见物品的体积,价格。思路:直接背包肯定不行,这样我们就可以对容积在三个数的体积的最小公倍数以内的容量进行背包,以外的我们可以对超出的部分进行贪心。然后对以三数最小公倍数内的数+贪心剩下的体积进行背包。#include<map>#include<queue>#include<cmath>#include<cstdio>#include<st原创 2016-03-20 19:36:21 · 647 阅读 · 0 评论 -
SDUTOJ 3131 A回(多重背包)
题目描述新年伊始,我飞瞅准机会要大赚一笔,于是我飞换了一个体积为V的背包。 现在有N种商品,每种商品有Mi件,可以带来的收益为Pi,体积为Vi。那么问题来了,在所装物品不超过V的前提下的最大收益是多少?谁能快速的做帮我飞算出来,我飞就让谁出任UFO,迎娶高富帅,走上人生巅峰233。各位准Final巨巨加油啊。输入 第一行输入一个T,代表有T(1 组数据。对于原创 2015-08-24 18:19:58 · 533 阅读 · 0 评论 -
HDU 2844 Coins (多重背包)
题目大意:有n种商品,个人拥有m元钱。下一行中前n/2为n种物品的价钱后n/2为对应的物品数量。问不超过m元钱中买商品的钱数有多少种不同的。思路:就是多重背包,最后哈希统计一下数量就行。#include#include#include#include#include#include#include#include#include#define L1 lon原创 2016-01-08 10:09:41 · 473 阅读 · 0 评论 -
HDU 2191 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活(多重背包)
思路:由于限定了每种商品的数量所以必定是多重背包。主要是多重背包转化为01背包的过程是将不能使用完全背包的转化为若干件01背包处理,因为任何一个数都可以用二进制表示,所以将某种商品的数量都拆分成某个01背包的形式并乘以系数。那么这样就可以表示某种物品的数量了。如 10 可以拆为 1 2 4 当10-7=3 #include#include#include#include#inc原创 2016-01-08 09:32:14 · 798 阅读 · 0 评论 -
HDU 1114 Piggy-Bank(完全背包)
思路:PS:(完全背包每件商品无限,多重是每件是有限制的)比较裸的完全背包,但注意初始化的问题,dp[0]=0;#include#include#include#include#include#include#include#include#include#define L1 long long#define L2 int#define inf 0x3f3原创 2016-01-07 20:57:47 · 368 阅读 · 0 评论 -
HDU 2602 Bone Collector(01二维背包&一维背包&滚动数组优化二维背包的原理 )
01背包模板,注意一点当枚举背包容量的时候控制应该从V(总)~ >=0当满足j>=w[i]才进行比较否则直接进行从上一阶段推下来。#include#include#include#include#include#include#include#include#include#define L1 long long#define L2 int#define inf原创 2016-01-07 11:41:58 · 437 阅读 · 0 评论 -
在容量为m的背包里,问有多少种不超过m的装包方式(多重背包+枚举统计)
多组输入。对于每组数据,第一行为两个整数n,m(1 ) 。接下来的一行有n个整数Ai,n个整数Ci(1 ) 。文件的最后一行为两个0,代表输入结束。输出 对于每组数据,输出一行,包含一个整数代表答案。3 101 2 42 1 12 5 1 42 10 0示例输出84#include#include#include#原创 2015-09-15 21:17:20 · 780 阅读 · 0 评论 -
非背包
SDUT 3033 (坑)#include#include#include#include#define LL long longusing namespace std;struct node{ LL s,p,w;}q[10];int main(){ LL n,v,i,j,k; while(~scanf("%ll原创 2015-08-28 21:30:39 · 780 阅读 · 0 评论 -
POJ 1276 Cash Machine(多重背包)
DescriptionA Bank plans to install a machine for cash withdrawal. The machine is able to deliver appropriate @ bills for a requested cash amount. The machine uses exactly N distinct bill denominatio原创 2015-08-24 17:18:34 · 627 阅读 · 0 评论 -
POJ 1837 Balance(01背包)
DescriptionGigel has a strange "balance" and he wants to poise it. Actually, the device is different from any other ordinary balance.It orders two arms of negligible weight and each arm's length i原创 2015-08-24 15:10:21 · 569 阅读 · 0 评论 -
SDUTOJ 1381 小P寻宝记——粗心的基友 (01背包)
题目描述这对好基友他们在经历无数的艰难险阻后,终于找到了宝藏。无奈的是这一对好基友竟然是一样的粗心,又忘记了带一个大一点的包包,可惜啊、、选择又出现了啊、、已知包的体积是v,每种宝贝只有一种,宝贝的体积是pi,价值是wi。求出这对粗心的基友可以最多带走价值多少的宝藏。输入输入数据有多组。每组第一行有两个正整数n(n 接下来n行,每行有两个正整数vi, wi。原创 2015-08-24 10:42:09 · 898 阅读 · 0 评论 -
SDUTOJ 2826 小P寻宝记——好基友一起走(完全背包)
小P寻宝记——好基友一起走Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述话说,上次小P到伊利哇呀国旅行得到了一批宝藏。他是相当开心啊,回来就告诉了他的好基友小鑫,于是他们又结伴去伊利哇呀国寻宝。这次小P的寻宝之路可没有那么的轻松,他们走到了一个森林,小鑫一不小心被触发了机关,被困在了一个大笼子里面,原创 2015-08-24 10:54:26 · 970 阅读 · 0 评论