P1833 樱花
樱花
题目的物品分成2种
- 可以无限次数放入背包
- 有限次数放入背包
可以无限次数放入背包就按照完全背包处理,背包容量值从小到大遍历
1 | |
对于有限次数的物品可以有两种优化方法:
- 二进制拆分
- 单调队列(不会)
二进制拆分
对于一件能选
则可以把物品才分成几堆,每一堆的数量为:
可以把上面的物品当作两两不同的新物品对待,相应价值、重量也会变化,而上面每个物品只能选一次,然而总次数一定是小于
不难看出,处于区间
对于樱花这道题的二进制拆分可以这么写:
1 | |
对比图:
题目的物品分成2种
可以无限次数放入背包就按照完全背包处理,背包容量值从小到大遍历
1 | |
对于有限次数的物品可以有两种优化方法:
对于一件能选
则可以把物品才分成几堆,每一堆的数量为:
可以把上面的物品当作两两不同的新物品对待,相应价值、重量也会变化,而上面每个物品只能选一次,然而总次数一定是小于
不难看出,处于区间
对于樱花这道题的二进制拆分可以这么写:
1 | |
对比图:
TOC