背包
文章平均质量分 74
u010290366
这个作者很懒,什么都没留下…
展开
-
背包方案数
背包方案数主要有两类问题。货币组成方案。有若干种面值的货币,问在一定范围内,能组成不同面值,有多少种方案。可以是01背包,或者完全背包。最优解的方案数。问题背景是01背包,问最优解的方案数。下面分别用两道例题来说明。数字组合算法分析:01背包的思路。f[i][j]f[i][j]f[i][j]表示规划到了第i个数字,他们的总和为j的方案数。这是恰的定义方式。对于第i个数字,可取可不取。f[i][j]=f[i−1][j]+f[i−1][j−a[i]]f[i][j] = f[i-1][j]原创 2021-01-13 12:18:46 · 174 阅读 · 0 评论 -
281. 硬币
多重背包:281. 硬币题目链接:硬币**算法分析:初看起来就是个简单的分组背包,CiC_iCi不大于1000,二进制拆分最多拆出10个数,这样时间复杂度在10810^8108,勉强。提交后,数据强,超时。以下是标准二进制拆分超时代码。#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using na原创 2021-01-13 20:02:32 · 82 阅读 · 1 评论