atcoder#ABC268C. [ABC268C] Chinese Restaurant

[ABC268C] Chinese Restaurant

题目描述

回転テーブルの周りに人 0 0 、人 1 1 \ldots 、人 N1 N-1 がこの順番で反時計回りに等間隔で並んでいます。また、人 i i の目の前には料理 pi p_i が置かれています。
あなたは次の操作を 0 0 回以上何度でも行うことが出来ます。

  • 回転テーブルを反時計回りに 1 1 周の 1N \frac{1}{N} だけ回す。これによって、(この操作の直前に)人 i i の目の前にあった料理は人 (i+1) mod N (i+1)\ \bmod\ N の目の前に移動する。

操作を完了させた後において、人 i i は料理 i i が人 (i1) mod N (i-1)\ \bmod\ N 、人 i i 、人 (i+1) mod N (i+1)\ \bmod\ N のいずれかの目の前に置かれていると喜びます。
喜ぶ人数の最大値を求めてください。

a mod m a\ \bmod\ m とは 整数 a a と正整数 m m に対し、a mod m a\ \bmod\ m ax a-x m m の倍数となるような 0 0 以上 m m 未満の整数 x x を表します。(このような x x は一意に定まることが証明できます)

输入格式

入力は以下の形式で標準入力から与えられる。

N N p0 p_0 \ldots pN1 p_{N-1}

输出格式

答えを出力せよ。

题目大意

题意

NN 个人从 00 开始编号, 按逆时针顺序间隔均匀地坐在转盘周围。 在开始时, 第 pip_{i} 盘菜在第 ii 个人的前面。

现在, 你可以进行以下操作 00 次或多次。

  • 将转盘逆时针旋转 1N\frac{1}{N} 圈。也就是说, 旋转前在第 ii 号人面前的盘子现在在 (i+1)modN(i+1)\bmod N 号人面前了。

当你结束操作后,如果第 ii 盘菜在第 (i1)modN(i-1)\bmod N 个人、第 ii 个人或第 (i+1)modN(i+1)\bmod N 个人面前,第 ii 个人就会感到高兴。

请求出你最多能使多少人感到高兴。

数据范围

  • 3N2×1053 \leq N \leq 2 × 10^{5}
  • 0piN10 \leq p_{i} \leq N - 1
  • iji \ne jpipjp_{i}\ne p_{j}
  • 所有输入都是整数

输入格式

使用标准输入以以下格式读入:

N
p0 ... pN-1

输出格式

直接输出答案


样例解释1

下图是一次操作后的桌面

这里有四个人感到快乐:

  • 00 个人感到快乐,因为第 00 盘菜在第 3 (=(01)mod4)3\ (=(0 - 1) \bmod 4) 个人面前;
  • 11 个人感到快乐,因为第 11 盘菜在第 11 个人面前
  • 22 个人感到快乐,因为第 22 盘菜在第 22 个人面前
  • 33 个人感到快乐,因为第 33 盘菜在第 0 (=(3+1)mod4)0\ (=(3+1)\bmod 4) 个人面前

很显然不能有五个或更多的人感到快乐了,所以答案是 44 .

4
1 2 0 3
4
3
0 1 2
3
10
3 9 6 1 7 2 8 0 5 4
5

提示

制約

  • 3  N  2 × 105 3\ \leq\ N\ \leq\ 2\ \times\ 10^5
  • 0  pi  N1 0\ \leq\ p_i\ \leq\ N-1
  • i  j i\ \neq\ j ならば pi  pj p_i\ \neq\ p_j
  • 入力はすべて整数

Sample Explanation 1

操作を 1 1 回行うと下の画像のようになります。 ![](https://img.atcoder.jp/abc268/70536a7b7fad87d6a49ad00df89a4a30.png) この時、4 4 人が喜ぶことを以下のように確かめられます。 - 人 0 0 は料理 0 0 が人 3 (=(01) mod 4) 3\ (=(0-1)\ \bmod\ 4) の目の前に置かれているので喜びます。 - 人 1 1 は料理 1 1 が人 1 (=1) 1\ (=1) の目の前に置かれているので喜びます。 - 人 2 2 は料理 2 2 が人 2 (=2) 2\ (=2) の目の前に置かれているので喜びます。 - 人 3 3 は料理 3 3 が人 0 (=(3+1) mod 4) 0\ (=(3+1)\ \bmod\ 4) の目の前に置かれているので喜びます。 5 5 人以上が喜ぶことは無いため、答えは 4 4 です。