atcoder#ABC290E. [ABC290E] Make it Palindrome

[ABC290E] Make it Palindrome

配点 : 500500

問題文

数列 XX に対し、 f(X)=f(X) = ( XX を回文にするために変更する必要のある要素の個数の最小値 ) とします。

与えられた長さ NN の数列 AA の全ての 連続 部分列 XX に対する f(X)f(X) の総和を求めてください。

但し、長さ mm の数列 XX が回文であるとは、全ての 1im1 \le i \le m を満たす整数 ii について、 XXii 項目と m+1im+1-i 項目が等しいことを指します。

制約

  • 入力は全て整数
  • 1N2×1051 \le N \le 2 \times 10^5
  • 1AiN1 \le A_i \le N

入力

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

NN

A1A_1 A2A_2 \dots ANA_N

出力

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

5
5 2 1 2 2
9
  • f(5)=0f(5) = 0
  • f(2)=0f(2) = 0
  • f(1)=0f(1) = 0
  • f(2)=0f(2) = 0
  • f(2)=0f(2) = 0
  • f(5,2)=1f(5,2) = 1
  • f(2,1)=1f(2,1) = 1
  • f(1,2)=1f(1,2) = 1
  • f(2,2)=0f(2,2) = 0
  • f(5,2,1)=1f(5,2,1) = 1
  • f(2,1,2)=0f(2,1,2) = 0
  • f(1,2,2)=1f(1,2,2) = 1
  • f(5,2,1,2)=2f(5,2,1,2) = 2
  • f(2,1,2,2)=1f(2,1,2,2) = 1
  • f(5,2,1,2,2)=1f(5,2,1,2,2) = 1

以上より、求める答えは 99 です。