2019年3月6日

完全背包(SOJ 3300)

摘要: SOJ 3300: Stockholm Coins http://acm.scu.edu.cn/soj/problem.action?id=3300 题意:给出n个正整数num[i], 0≤i<n,求解一个最小的数,满足要通过求和得到该数必须用上所有的num[i](每个num[i]可以用任意次)。若 阅读全文

posted @ 2019-03-06 18:01 小叶子曰 阅读(113) 评论(0) 推荐(0) 编辑

0-1背包(SOJ 3172)

摘要: SOJ 3172: Fisherman http://acm.scu.edu.cn/soj/problem.action?id=3172 题意:给出n个数,从这n个数中选出任意一些求和,求解有多少种不同的和。 分析:考虑0-1背包模型,定义dp[i][j]为使用前i个数,和j是否存在,若存在则为1, 阅读全文

posted @ 2019-03-06 05:14 小叶子曰 阅读(124) 评论(0) 推荐(0) 编辑

2019年3月5日

完全背包(SOJ 2785)

摘要: SOJ 2785: http://acm.scu.edu.cn/soj/problem.action?id=2785 题意:任意一个正整数都可以分解成2的幂次数之和,这里2的幂次数为集合{1,2,4,8,16,32,...}. 举个例子5, 5=1+1+1+1+1 5=1+1+1+2 5=1+2+2 阅读全文

posted @ 2019-03-05 14:21 小叶子曰 阅读(160) 评论(0) 推荐(0) 编辑

多重背包

摘要: 我在之前讲过0-1背包和完全背包,这里讲多重背包。不同于0-1背包和完全背包,多重背包中每个物品有个给定的数量。假定背包容量为m,有n个物品,每个物品的重量为weight[i], 价值为value[i], 数目为num[i]. 显然,多重背包可以转化为0-1背包问题:将num[i]个物品i看作是nu 阅读全文

posted @ 2019-03-05 07:55 小叶子曰 阅读(213) 评论(0) 推荐(0) 编辑

2019年3月4日

完全背包

摘要: 之前我讲过0-1背包,这里讲解完全背包。 一. 问题描述 假设我们给定n个物品,每个物品具有重量weight以及价值value,第i个物品的重量为weight[i], 价值为value[i]。同时给定一个容量为m的背包,求解背包里装入的物品价值之和的最大值。 不同于0-1背包问题(每件物品最多放入一 阅读全文

posted @ 2019-03-04 16:18 小叶子曰 阅读(743) 评论(0) 推荐(0) 编辑

2019年3月1日

0-1背包

摘要: 一. 问题描述 给定n个物品,每个物品有一个重量(也可以看作体积)weight[i]和一个价值value[i], 1≤i≤n。现有一个给定容量m的背包,求解背包里装入的物品价值之和的最大值。 二. 分析 定义dp[i][j]为:背包的容量为j并且放入前i个物品的最大价值。我们对第i个物品分析,存在两 阅读全文

posted @ 2019-03-01 15:27 小叶子曰 阅读(255) 评论(0) 推荐(1) 编辑

最长连续子段和被某个整数整除(SOJ 2293)

摘要: SOJ 2293: The Longest SubSequence 题目意思很明白,找出能被给出的整数整除的最长的连续子段和,输出这个子段和的长度。算法思路很简单:对数组累计求和,然后利用模同余的思想。这里有个取模的trick注意一下,C++中一个负数$x$对一个正数$y$取模为负,例如$-9\%4 阅读全文

posted @ 2019-03-01 13:08 小叶子曰 阅读(279) 评论(0) 推荐(0) 编辑

查找过半元素(SOJ 4389)

摘要: SOJ 4389: http://acm.scu.edu.cn/soj/problem.action?id=4389 题意非常简单:给定一个数组,找出过半的那个元素。刚开始我考虑从中位数入手,因为中位数一定是所求的答案。所以,利用快排找第(n+1)/2个元素,结果超时了。后来参考了别人的算法,这道题 阅读全文

posted @ 2019-03-01 13:06 小叶子曰 阅读(158) 评论(0) 推荐(0) 编辑

0-1背包(SOJ 2222)

摘要: SOJ 2222: Health Power http://acm.scu.edu.cn/soj/problem.action?id=2222 题目意思不难理解:给出需要的能量K以及F个食物(每个食物只能用一次),每种食物i具有能量HP[i]和分数score[i]。食物应该首先满足能量要求,然后从剩 阅读全文

posted @ 2019-03-01 13:02 小叶子曰 阅读(130) 评论(0) 推荐(0) 编辑

SOJ 1093

摘要: SOJ 1093: 伊拉克 http://acm.scu.edu.cn/soj/problem.action?id=1093 题意:有m艘船,给出每艘船的长度。现在把这m艘船排成n行,每一行至少有一艘船。给出这n行每一行的长度,输出该行船的个数以及每艘船的长度。多种情况下,将长的的放在前面。 这道题 阅读全文

posted @ 2019-03-01 12:59 小叶子曰 阅读(114) 评论(0) 推荐(0) 编辑

导航