随笔分类 - 背包dp
摘要:背包问题总结 当空间优化为一维后的限制 除了完全背包 和多重背包的单调队列优化写法 其他的背包问题 体积都是从大到小循环的 体积至多为v 一般的背包问题 体积恰好为v 除了dp[0]外 其他初始化为无穷即可 体积至少为v 除了dp[0]外 其他初始化为无穷 更新的时候 j-w[i] 可以是负数也可以
阅读全文
摘要:题目链接:https://vjudge.net/contest/408015#problem/L题意:选多个和不超过b的数 使得其公倍数最大思路:分组背包问题 分组背包的 v要放在 遍历某一组的物品 之外 才能保证同一组的物品只取一次 模拟一下就可以发现 只需要对质数的正整数幂 分组 即可 注意的是
阅读全文
摘要:题目链接:https://www.luogu.com.cn/problem/P1164思路:f[i][j] 代表 前i道钱 刚好花费j元 所能得到的方案数 那么每道菜可以有吃和不吃两种选择, 因为是方案数,所以是由前面的累加而得到 不吃的花 那么方案数f[i][j]+=f[i-1][j] 如果吃的话
阅读全文
摘要:题目链接:https://codeforces.ml/contest/1382/problem/D 题意:给一段长为2n 的排列方式(permutation) 问 能否找到对应的 两段n 组成的 序列 构成这段排列方式 当a[1]<b[1]时候 将a[1] 取出,然后变成(a[2]……a[n] 和b
阅读全文
摘要:题目链接:https://ac.nowcoder.com/acm/problem/207651 思路: x 和y 可以转换成 完成背包求方案数, 相当于只有两种纸币 求组合的方案数 而 斐波那契 先枚举一遍单独加1即可 注意这是每个组合只能取一个所以不是转换成01背包 而且要在x和y处理前 先加上,
阅读全文
摘要:题目链接:https://atcoder.jp/contests/abc145/tasks/abc145_e 题意:有n道菜,每道菜需要a[i]分吃完,能获得b[i]的美味值 给T分钟,问怎么样吃,才能在T内得到最多的美味值, 一旦开始了吃就一定会吃完这道菜,哪怕时间超过T分 思路:很明显的01背包
阅读全文
摘要:题目链接:https://atcoder.jp/contests/abc142/tasks/abc142_e 题意:有N个锁 M把钥匙 每把钥匙可以打开给定的门 同时每把钥匙有花费a[i],问怎么样购买钥匙能打开所有门的同时花费最少 思路:看到N很小 空间和时间都没什么问题 考虑状压dp 然后选和不
阅读全文

浙公网安备 33010602011771号