#CF327A. 翻转游戏
翻转游戏
A. 翻转游戏
每次测试时间限制: 秒
内存限制: 兆字节
Iahub 感到无聊,于是他在纸上发明了一个游戏。
他写下 个整数 。每个整数只能是 或 。他允许执行恰好一次操作:选择两个下标 和 (),然后翻转区间 内所有位置 的值(即对 执行 )。
游戏的目标是:在执行恰好一次操作后,得到尽可能多的 。请编写一个程序来解决 Iahub 的这个小小游戏。
输入
第一行包含一个整数 ()。
第二行包含 个整数:。保证每个值都是 或 。
输出
输出一个整数——在执行恰好一次操作后,能得到的 的最大数量。
示例
输入
5
1 0 0 1 0
输出
4
输入
4
1 0 0 1
输出
4
说明
- 在第一个示例中,翻转区间 (即 )。翻转后序列变为:,包含 个 。没有办法使整个序列变成 。
- 在第二个示例中,只翻转第 和第 个元素()即可将所有数字变成 。