
背包
新笑雨
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
codeforces 1280D
题目链接题意给一棵树,树上每个点有两个权值,分别是wi,bi要求将树分成m个联通块,要求最多能有几个联通块内的∑wi>∑bi\sum wi \gt \sum bi∑wi>∑bi数据范围多组数据,组数<=100n,m<=3000∑n≤1e5\sum n\le 1e5∑n≤1e5解法树形背包首先有一个简单的想法:f[i][j][k]表示第i个点的子树,被分成...原创 2020-01-11 15:59:53 · 216 阅读 · 0 评论 -
codeforces 1111D
题目链接题意给一个长度为n(n≤2e5)n(n\le 2e5)n(n≤2e5)的字符串,字符集为大写字母和小写字母,有q次询问.每次指定两个位置,要求将所有和这两个位置的字母相同的字母都放在字符串的同一半,然后其它每种字母也要放在字符串的同一半.对每组询问,回答合法方案数mod 1e9+7mod~1e9+7mod 1e9+7.解法首先考虑对问题的转化,将哪些字母放在字符...原创 2020-01-10 19:39:47 · 159 阅读 · 0 评论 -
多重背包的优化方法
orz zrf首先,经典的多重背包解法,是把一个物品分成该物品的总数份,然后做01背包第一个优化方法是把一个物品呢分成O(log(该物品的总数份))O(log(该物品的总数份))O(log(该物品的总数份)),举个例子:如果物品有2n−12^n-12n−1个,就分成20,21,...,2n−12^0,2^1,...,2^{n-1}20,21,...,2n−1,这样.如果不是2n−12^n-1...原创 2019-12-27 17:31:59 · 215 阅读 · 0 评论 -
一道bitset优化背包的练习题
有 nnn 种物品,第 i 种物品有 cicici 个,体积为 vivivi。给定整数集合 SSS,从这 n 种物品中选出 k(k∈S)k(k ∈ S )k(k∈S)种物品,每种物品选任意正整数个,问可以得到哪些小于 LLL 的总体积值。所有输入数据小于等于2000首先f[i][j]f[i][j]f[i][j]表示选了jjj种物品,能否获得iii的体积,然后可以bitsetbitsetbi...原创 2019-12-20 21:14:36 · 340 阅读 · 0 评论