#CF327A. 翻转游戏

翻转游戏

A. 翻转游戏
每次测试时间限制:11
内存限制:256256 兆字节

Iahub 感到无聊,于是他在纸上发明了一个游戏。

他写下 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n。每个整数只能是 0011。他允许执行恰好一次操作:选择两个下标 iijj1ijn1 \le i \le j \le n),然后翻转区间 [i,j][i, j] 内所有位置 aka_k 的值(即对 xx 执行 x=1xx = 1 - x)。

游戏的目标是:在执行恰好一次操作后,得到尽可能多的 11。请编写一个程序来解决 Iahub 的这个小小游戏。

输入
第一行包含一个整数 nn1n1001 \le n \le 100)。
第二行包含 nn 个整数:a1,a2,,ana_1, a_2, \dots, a_n。保证每个值都是 0011

输出
输出一个整数——在执行恰好一次操作后,能得到的 11 的最大数量。

示例

输入

5
1 0 0 1 0

输出

4

输入

4
1 0 0 1

输出

4

说明

  • 在第一个示例中,翻转区间 [2,5][2, 5](即 i=2,j=5i = 2, j = 5)。翻转后序列变为:[1,1,1,0,1][1, 1, 1, 0, 1],包含 4411。没有办法使整个序列变成 [1,1,1,1,1][1, 1, 1, 1, 1]
  • 在第二个示例中,只翻转第 22 和第 33 个元素(i=2,j=3i = 2, j = 3)即可将所有数字变成 11