#P15681. 分糖果
分糖果
题目描述
现有一个长度为 的数列 和 个操作,操作共两种:
- 给定 ,你需要将 的值修改为 ;
- 给定 ,你需要求出:若现在一共有 个篮子和 个人,第 个人会选择不同的 个篮子并往这 个篮子中各放 颗糖,恰好装有 颗糖的篮子的数量的最大值。
输入格式
第一行包含三个整数 ,其中 表示测试点编号。样例满足 。
第二行包含 个整数 。
接下来 行,第 行包含三个整数,格式形如 或 ,分别表示第一种操作和第二种操作。
输出格式
对于每个第二种操作,输出一行,包含一个整数表示答案。
0 3 4
1 2 5
2 5 2
1 3 3
2 4 1
2 5 0
3
3
2
提示
样例 1 解释
- 进行第一个操作时,,,;第 个人可以选择往第 个篮子中放 颗糖,第 个人可以选择往第 个篮子和第 个篮子中放 颗糖,第 个人只能选择往所有篮子中均放 颗糖,此时第 个篮子中均有恰好 颗糖,容易证明这样可以使装有恰好 颗糖的篮子的数量最大化。
- 进行第三个操作时,,,;第 个人可以选择往第 个篮子中放 颗糖,第 个人可以选择往第 个篮子和第 个篮子中放 颗糖,第 个人可以选择往第 个篮子中均放 颗糖,此时第 个篮子中均有恰好 颗糖,容易证明这样可以使装有恰好 颗糖的篮子的数量最大化。
- 进行第四个操作时,,,;第 个人可以选择往第 个篮子中放 颗糖,第 个人可以选择往第 个篮子和第 个篮子中放 颗糖,第 个人可以选择往第 个篮子中均放 颗糖,此时第 个篮子和第 个篮子中均有恰好 颗糖,容易证明这样可以使装有恰好 颗糖的篮子的数量最大化。
样例 2
见 candy/candy2.in 与 candy/candy2.ans。
该组样例满足测试点 的限制。
样例 3
见 candy/candy3.in 与 candy/candy3.ans。
该组样例满足测试点 的限制。
样例 4
见 candy/candy4.in 与 candy/candy4.ans。
该组样例满足测试点 的限制。
样例 5
见 candy/candy5.in 与 candy/candy5.ans。
该组样例满足测试点 的限制。
样例 6
见 candy/candy6.in 与 candy/candy6.ans。
该组样例满足测试点 的限制。
样例 7
见 candy/candy7.in 与 candy/candy7.ans。
该组样例满足测试点 的限制。
样例 8
见 candy/candy8.in 与 candy/candy8.ans。
该组样例满足测试点 的限制。
数据范围
对于所有测试数据,保证:
- ;
- ;
- ,;
- ,。
::cute-table{tuack}
| 测试点编号 | 特殊性质 | |
|---|---|---|
| A | ||
| B | ||
| BC | ||
| 无 | ||
| BC | ||
| B | ||
| C | ||
| 无 | ||
| BC | ||
| B | ||
| C | ||
| 无 | ||
| A | ||
| BC | ||
| B | ||
| C | ||
| 无 |
- 特殊性质 A:保证 。
- 特殊性质 B:保证 。
- 特殊性质 C:保证没有第一种操作。