#P6496. [COCI2016-2017#2] Nizin

[COCI2016-2017#2] Nizin

题目描述

AA 是一个含有 nn 个元素的数组,其中各元素的编号为 1n1\dots n。若对于任意整数 i[1,n]i\in [1,n] 都有 Ai=Ani+1A_i=A_{n-i+1},则称 AA 是一个「回文数组」。

Mislav 可以通过以下方式修改一个数组:

  1. 选择两个相邻的元素。
  2. 将这两个元素替换为一个新的元素,值为它们的和。

现在,给出一个数组。请你计算在至少多少次修改后,Mislav 可以将其修改为一个「回文数组」。

输入格式

第一行一个整数 nn,表示数组中元素的个数。

接下来一行 nn 个整数 aia_i,表示数组中的元素。

输出格式

一行,一个整数,表示 Mislav 至少需要修改数组的次数。

3
1 2 3 
1 
5
1 2 4 6 1
1 
4
1 4 3 2 
2 

提示

【样例解释】

使用 [] 标记 Mislav 修改时所选择的两个数。

样例 1 解释

[1 2] 3 -> 3 3

样例 2 解释

1 [2 4] 6 1 -> 1 6 6 1

样例 3 解释

[1 4] 3 2 -> 5 [3 2] -> 5 5


【数据规模与约定】

  • 对于 30%30\% 的数据,保证 n10n \leq 10
  • 对于 60%60\% 的数据,保证 n103n \leq 10^3
  • 对于 100%100\% 的数据,保证 1n1061\le n\le 10^61ai1091\le a_i\le 10^9

【说明】

题目译自 COCI2016-2017 CONTEST #2 T3 Nizin