atcoder#ARC136C. [ARC136C] Circular Addition

[ARC136C] Circular Addition

配点 : 500500

問題文

長さ NN の整数列 x=(x0,x1,,xN1)x=(x_0,x_1,\cdots,x_{N-1}) があります(添字が 00 から始まることに注意). 最初,xx の要素はすべて 00 です.

あなたは,以下の操作を好きな回数繰り返すことができます.

  • 整数 i,ki,k (0iN10 \leq i \leq N-1, 1kN1 \leq k \leq N) を選ぶ. その後,iji+k1i \leq j \leq i+k-1 を満たすすべての jj について,xjmodNx_{j\bmod N} の値を 11 増やす.

長さ NN の整数列 A=(A0,A1,,AN1)A=(A_0,A_1,\cdots,A_{N-1}) が与えられます. xxAA に一致させるために必要な最小の操作回数を求めてください.

制約

  • 1N2000001 \leq N \leq 200000
  • 1Ai1091 \leq A_i \leq 10^9
  • 入力される値はすべて整数

入力

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

NN

A0A_0 A1A_1 \cdots AN1A_{N-1}

出力

答えを出力せよ.

4
1 2 1 2
2

以下のように操作すればよいです.

  • 最初,x=(0,0,0,0)x=(0,0,0,0) である.
  • i=1,k=3i=1,k=3 で操作を行う.x=(0,1,1,1)x=(0,1,1,1) となる.
  • i=3,k=3i=3,k=3 で操作を行う.x=(1,2,1,2)x=(1,2,1,2) となる.
5
3 1 4 1 5
7
1
1000000000
1000000000