atcoder#ARC120E. [ARC120E] 1D Party

[ARC120E] 1D Party

配点 : 700700

問題文

11 から人 NN までの NN 人の人が数直線上に並んでいます。人 ii は今数直線上の座標 AiA_i にいます。 ここで、A1<A2<A3<<ANA_1 < A_2 < A_3 < \dots < A_N であり、AiA_i は全て偶数です。

今から kk 秒間のパーティーを開きます。 パーティー中、各人は毎秒 11 以下の速さで数直線上を自由に動くことができます。(速さが毎秒 11 以下であれば負の向きに動くこともできます。) 参加者の希望により、1i<N1 \le i \lt N を満たす全ての整数 ii について以下の条件を満たす必要があります。

  • ii と人 i+1i + 1 が同じ座標にいる瞬間が、パーティー中 (終了の瞬間も含む) に少なくとも 11 回存在する

各人が最適に行動すると条件を全て満たすことができるような最小の kk を求めてください。 この問題の制約下で答えが整数になることが証明できます。

制約

  • 2N2×1052 \le N \le 2 \times 10^5
  • 0Ai1090 \le A_i \le 10^9
  • A1<A2<A3<<ANA_1 < A_2 < A_3 < \dots < A_N
  • AiA_i は偶数

入力

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

NN

A1A_1 A2A_2 A3A_3 \dots ANA_N

出力

答えを整数として出力せよ。

3
0 6 10
5

55 秒間のパーティーの間、各人は以下のように移動するとよいです。

  • 11 : 常に正の向きに速さ 11 で移動する
  • 22 : 最初の 22 秒間は正の向きに速さ 11 で移動し、残りの 33 秒間は負の向きに速さ 11 で移動する
  • 33 : 常に負の向きに速さ 11 で移動する

各人がこのように移動した場合、開始からちょうど 22 秒後に人 22 と人 33 が同じ座標にいます。また、パーティーの終了時に人 11 と人 22 が同じ座標にいます。 よって、k=5k = 5 の場合、条件を全て満たすことができます。これより小さい kk では条件を全て満たすような移動の仕方は存在しません。

5
0 2 4 6 8
3

33 秒間のパーティーの間、各人は例えば以下のように移動するとよいです。

  • 11 : 常に正の向きに速さ 11 で移動する
  • 22 : 最初の 22 秒間は正の向きに速さ 11 で移動し、残りの 11 秒間は負の向きに速さ 11 で移動する
  • 33 : 常に移動しない
  • 44 : 最初の 22 秒間は負の向きに速さ 11 で移動し、残りの 11 秒間は正の向きに速さ 11 で移動する
  • 55 : 常に負の向きに速さ 11 で移動する
10
0 2 4 6 8 92 94 96 98 100
44