题目地址:
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=5616题意:用已知的砝码能否称出给出的重量,砝码可以放在2边,看到好多人用异或写,参考一下思路:在已有背包里面减和加就行AC代码:#include #include #include #include #include #include #include #include
题目地址:点击打开链接 思路:先把本博客有关背包九讲里的东西看了,背包有2个属性,如最大承重和最大容积,2个属性中的任意一个值达到最大值都不能再放东西,这道题
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2546思路:AC代码:错误代码:#include #includ
题目地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=311思路:待测代码1:#include #incl #include #include const int inf = 0x
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1881思路:看到这道题时根本没一点
题目地址:点击打开链接思路:价值和的一
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1284思路:AC代码:#include #include #include using namespace std;int dp[40000];int main(){ memset(dp,0,sizeof(dp)); dp[0] = 1; for(int
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1248思路:比较裸的完全背包AC代码:#include #include #include #include #include #include #include #include #include #include #include const int inf = 0
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1059思路:简单多重背包,按照题目数据开的数组,结果RE了,果断开大,直接过了AC代码:#include #include #include #include #include #include #include #include #include #include #i
题目地址:点击打开链接题意:有n个数求能挑出多少种使得最后他们的和能整除p思路:一个数的取法无非求2种取或不取AC代码:#include #include #include #include #include #include #include #include #include #include using namespace std;const int
题目地址:点击打开链接思路:把一种物品分为二种物品,它们花的钱相同,一种物品只能取一次,获得的糖果为a[i]+b[i],另一种物品能取无数次,获得的糖果为a[i],当二种物品取到时,第一种物品物品肯定已经取了,因为花的钱一样,第一种获得的糖果多,这样就转化为完全背包和01背包AC代码:#include #include #include using namespace std;
题目地址:点击打开链接 思路:刚开始没想到是01背包,看了别人的解题报告才懂的,算是一道好题吧,和普通背包放东西有点不一样,需要从对立面思考,正面情况太多,求1减去份 也收不到的概率即可 AC代码: #include #include #include using namespace std; int cost[10001]; double value[10001],dp[1000
题目地址:点击打开链接思路:给软件学院和计算机学院分2个背包,每个背包的容量是所有设备的一半,让软件学院的先拿,剩下的拿不了的归计算机学院,一次写完,直接AC,有点小激动啊AC代码:#include#includeint v[110],m[110],dp[200000];int n,sum;int max(int a,int b){ return a > b ? a :
题目地址:点击打开链接思路:看本博客背包类Tianyi Cui大神写的背包九讲,以及代码后的解释AC代码:#include#includeint p[120],h[120],c[120],v[120];int n,m;int max(int a,int b){ return a > b ? a : b;}void zeroone_pack(int money,int
题目地址:点击打开链接思路:完全背包,注意输入n时加!= EOF或~,害我调了半天,还以为又是用cin,cout超时了#include #include#include#includeusing namespace std;int value[110],volume[110],dp[100001];int main(){ int n,m,i,j; while
题目地址:点击打开链接思路:完全背包,二维的写废了,有时间一定再写一下AC代码:#include#includeint value[510],weight[510];int dp[10010];#define MAX 1001000//这不能加分号int min(int a,int b){ return a < b ? a : b;}int main(){
题目地址:点击打开链接思路:01背包,具体看代码,还有本博客动归里Tianyi Cui大神写的背包9讲错误代码:#include#includeint value[1010],volumn[1010],dp[1010][1010];int max(int a,int b){ return a > b ? a : b;}int main(){ int t,n,v,
题目地址:点击打开链接思路:01背包 ,只有ABC类能报销,有别的种类也不能报销,单类的物品不能超过600包的数据,如果先算小容量,后
题目地址:http://acm.nyist.net/JudgeOnline/problem.php?pid
题目地址:htt
题目地址:点击打开链接题意:小明买了一个书架,他想把东西放到书架上面,于是拿来了n个凳子,这些凳子的总高度大于等于书架的总高度,让你从n个凳子里取出一些使这些凳子的总高度大于书架的高度,并且超出书架的高度最低思路:书架高度太高了,所以不能用动态规划,用搜索即可AC代码:#include #include #include #include #include #includ
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4502思路:先按时间排序一下,跑一遍01背包就行,和1881
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号