比赛 EYOI暨SBOI暑假快乐赛6th 评测结果 AWWWWTTTTT
题目名称 Count 1s 最终得分 10
用户昵称 该账号已注销 运行时间 5.291 s
代码语言 C++ 内存使用 5.75 MiB
提交时间 2022-06-30 08:54:14
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,a[200100],b[200100]={0},c[200100]={0},ans=0;
bool v[200100]={0};
int main(){
    freopen("count1s.in","r",stdin);
    freopen("count1s.out","w",stdout);
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        if(a[i]==1){
            b[i]=b[i-1]+1;
            c[i]=c[i-1];
        }
        else{
            c[i]=c[i-1]+1;
            b[i]=b[i-1];
        }
    }
    v[b[n]]=1;
    for(int i=0;i<=n;i++){
        for(int j=i+1;j<=n+1;j++){
            int u;
            u=b[n]-(b[j]-b[i])+c[j]-c[i];
            v[u]=1;
        }
    }
    for(int i=0;i<=n;i++){
        if(v[i]==1){
        ans++;
        }
    }
    cout<<ans<<endl;
    return 0;
}