#4321. 中国餐馆(Chinese Restaurant )
中国餐馆(Chinese Restaurant )
题目描述
编号为到的个人围坐在一个转盘周围,按逆时针顺序均匀分布。编号为 的盘子放在第 个人面前的桌子上。
你可以执行以下操作 0 次或多次:
- 将转盘逆时针旋转 圈。结果是,原本在第 个人面前的盘子现在会在第 个人面前。
操作结束后,如果盘子i刚好在第个人,或者第个人,或者第个人前面,第个人就会开心。请计算最多可能有多少人开心。
对于一个整数 和一个正整数 , 表示 除以 后的余数。具体来说,它是一个介于 和 之间的整数 ,使得 是 的倍数。(可以证明这样的 是唯一的。)
输入格式
输入从标准输入中给出,格式如下:
.
输出格式
输出所求答案。
样例
4
1 2 0 3
4
3
0 1 2
3
10
3 9 6 1 7 2 8 0 5 4
5
样例1解释
下图显示了执行一次操作后的桌子状态。
此时有四个人感到高兴:
- 第 0 个人高兴,因为 0 号盘子在第 3 个人(= (0-1) mod 4)面前;
- 第 1 个人高兴,因为 1 号盘子在第 1 个人(= 1)面前;
- 第 2 个人高兴,因为 2 号盘子在第 2 个人(= 2)面前;
- 第 3 个人高兴,因为 3 号盘子在第 0 个人(= (3+1) mod 4)面前。
不可能有 5 个或更多的人感到高兴,所以答案是 4。
数据范围
- 如果 ,则
- 所有输入均为整数。
来源
- AtCoder ABC268C