#P15863. [Roi2026]火星背包
[Roi2026]火星背包
题目描述
火星人马文正在整理背包。面前有 个物品,编号为 到 。每个物品有两个属性:
- 第 个物品的奇异度为 ;
- 第 个物品的价值为 。
奇异度是一个非负整数,其二进制表示不超过 位,即
价值也是非负整数,且
一个物品集合的总价值定义为其中物品价值之和;总奇异度定义为其中所有物品奇异度的按位或(bitwise OR)。
马文称一个物品集合是有价值的,如果它的总价值不小于 。
对于每个 ,马文想从编号不超过 的物品中选择一个有价值的集合,并使这个集合的总奇异度尽可能小。
请对每个前缀分别求出这个最小总奇异度。
按位或定义如下:考虑若干整数的二进制表示,结果的第 位为 当且仅当至少有一个数的第 位为 。在常见程序语言中,这个运算通常写作 |。例如
输入格式
第一行包含三个整数 :
$$1\le n\le 2\,000\,000, \qquad 1\le k\le 22, \qquad 1\le C\le 10^{15}。$$接下来 行,每行包含两个整数 :
输出格式
输出 个数。第 个数应等于在前 个物品中选出有价值集合时,可能达到的最小总奇异度。
如果前 个物品中不存在有价值集合,则输出 。
样例
5 4 12
8 7
2 6
3 6
1 12
3 5
-1
10
3
1
1
样例说明
对于 ,只有一个物品,奇异度为 、价值为 ,无法选出总价值至少为 的集合,所以答案为 。
对于 ,唯一有价值的选择是取两个物品,总奇异度为 。
对于 ,任意两个或更多物品的集合都是有价值的,最优选择是第二、三个物品,总奇异度为 。
对于 ,可以只选第四个物品,它的价值已经足够,奇异度为 ,这是可能的最小值。对于 ,仍然可以选择第四个物品,因此答案也是 。
子任务与评分
| 子任务 | 分值 | 附加限制 | 必要子任务 |
|---|---|---|---|
| 1 | 10 | 样例 | |
| 2 | 11 | 样例,1 | |
| 3 | 14 | 样例,1-2 | |
| 4 | 13 | ,所有 都是二的幂 | - |
| 5 | 11 | 样例,1-2 | |
| 6 | 18 | 样例,1-3 | |
| 7 | 6 | 样例,1-4,6 | |
| 8 | 样例,1-4,6-7 | ||
| 9 | 11 | 无 | 样例,1-8 |