比赛 EYOI暨SBOI暑假快乐赛6th 评测结果 AAATTTTTTT
题目名称 Count 1s 最终得分 30
用户昵称 ➥Q小白小黑233 运行时间 7.298 s
代码语言 C++ 内存使用 5.50 MiB
提交时间 2022-06-30 11:28:35
显示代码纯文本
#include<cstdio>
#include<cmath>
#include<iostream>
#include<queue>
#include<map>
#include<stack>
#include<set>
#include<utility>
#include<algorithm>
#include<string>
#include<bitset>
 
using namespace std;
const int MAXN=200002;
bool b[MAXN]={};
bool c[MAXN]={};
int delta[MAXN]={}; 
int main(){
	freopen("count1s.in","r",stdin);
	freopen("count1s.out","w",stdout);
	int n;
	int i,j,k;
	
	cin>>n;
	int cnt=0;
	for(i=0;i<n;i++){
		cin>>b[i];
//		cout<<b[i]<<' ';
		if(b[i]){
			cnt++;
		}
	}
	c[cnt]=true;
	int l,r;
	for(l=0;l<n;l++){
		for(r=l;r<=n;r++){
			int cntp=0;
			if(l==r){
				b[i]=!b[i];
			} else{
				for(i=l;i<=r;i++){
					b[i]=!b[i];
//					cout<<"B "<<i<<' '<<b[i]<<endl;
				}
			}
			for(i=0;i<n;i++){
//				cout<<"A "<<i<<' '<<b[i]<<endl;
				if(b[i]){
					
					cntp++;
				}	
			}
			if(l==r){
				b[i]=!b[i];
			} else{
				for(i=l;i<=r;i++){
					b[i]=!b[i];
				}
			}
			c[cntp]=true;
//			cout<<"{}"<<cntp<<' '<<l<<' '<<r<<endl;
		}
	}
	int ans=0;
	for(i=0;i<=n;i++){
		if(c[i])
			ans++;
	}
	cout<<ans<<endl;
	return 0;
}