CF327A.Flipping Game
普及-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Iahub got bored, so he invented a game to be played on paper.
He writes n integers _a_1, _a_2, ..., a__n. Each of those integers can be either 0 or 1. He's allowed to do exactly one move: he chooses two indices i and j (1 ≤ i ≤ j ≤ n) and flips all values a__k for which their positions are in range [i, j] (that is i ≤ k ≤ j). Flip the value of x means to apply operation x = 1 - x.
The goal of the game is that after exactly one move to obtain the maximum number of ones. Write a program to solve the little game of Iahub.
伊阿胡布感到无聊,于是发明了一个可以在纸上玩的游戏。
他写下 n 个整数 a1,a2,…,an。其中每个整数只能是 0 或 1。他恰好可以执行一次操作:选择两个下标 i 和 j(满足 1≤i≤j≤n),并将所有位置在区间 [i,j] 内的值 ak(即满足 i≤k≤j 的所有 ak)进行翻转。对值 x 进行翻转是指执行操作 x=1−x。
游戏的目标是:在恰好执行一次操作后,使得序列中 1 的个数达到最大。请编写一个程序来解决伊阿胡布的这个小游戏。
输入格式
The first line of the input contains an integer n (1 ≤ n ≤ 100). In the second line of the input there are n integers: _a_1, _a_2, ..., a__n. It is guaranteed that each of those n values is either 0 or 1.
输入的第一行包含一个整数 n(1≤n≤100)。输入的第二行包含 n 个整数:a1,a2,…,an。保证这 n 个值中的每一个均为 0 或 1。
输出格式
Print an integer — the maximal number of 1s that can be obtained after exactly one move.
输出一个整数——恰好进行一次操作后所能得到的最多 1 的个数。
输入输出样例
输入#1
5 1 0 0 1 0
输出#1
4
输入#2
4 1 0 0 1
输出#2
4
说明/提示
In the first case, flip the segment from 2 to 5 (i = 2, j = 5). That flip changes the sequence, it becomes: [1 1 1 0 1]. So, it contains four ones. There is no way to make the whole sequence equal to [1 1 1 1 1].
In the second case, flipping only the second and the third element (i = 2, j = 3) will turn all numbers into 1.
在第一种情况下,翻转从第 2 位到第 5 位的区间(即 i=2,j=5)。该翻转操作改变序列,使其变为:
1 1 1 0 1
因此,序列中包含四个 1。无法通过任何操作使整个序列为 $$1\ 1\ 1\ 1\ 1$$。
在第二种情况下,仅翻转第二位和第三位元素(即 i=2,j=3)即可将所有数字变为 1。
输入解题思路,AI测评打分。不知道怎么写?