第6题
翻硬币 (coin)
小 Q 面前的桌子上有 N 个硬币,0 表示正面,1 表示反面,现在他有一次机会可以 选择一个 ai~bi 的段,把这个段的硬币都翻转一面,他现在想知道 N 个硬币中最多可以有 多少个硬币正面朝上。
【输入格式】
第一行一个整数 N,表示桌子上有 N 个硬币。
第二行为N 个 0 和1,表示硬币 i 的状态。其中 0 表示正面,1表示反面。
【输出格式】
第一行有一个整数,表示翻转后最多有多少个硬币正面朝上。
【输入样例】
4 1 0 1 1
【输出样例】
3
【样例解释】
将 1 0 1 1可以改为 0 $$1 0 0 或 1 0 0 0
【数据范围】
30%的数据 1<=N<=100
60%的数据 1<=N<=104。
100%的数据 1<=N<=106
代码:
#include<bits/stdc++.h>
using namespace std;
int n,x,ans;
int main(){
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>x;
if(x==1) ans++;
}
cout<<ans;
return 0;
}