QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#555397#9229. Juliet Unifies Onesyg#WA 0ms3848kbC++141.0kb2024-09-09 22:27:392024-09-09 22:27:39

Judging History

你现在查看的是最新测评结果

  • [2024-09-09 22:27:39]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3848kb
  • [2024-09-09 22:27:39]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
int a[51];
int main(){
	string s;
	cin>>s;
	int cnt1=0,cnt2=0;
	int tmp=0;
	bool flag=0;
	for(int i=0;s[i]!='\0';i++){
		if((s[i]=='1'&&s[i-1]=='0'&&i>0)||(s[i]=='0'&&s[i-1]=='1'&&i>0)){
			tmp++;
		}
		a[tmp]++;
	}
	int ans=0,sum=0;
	//cout<<s.back()<<endl;
	if(s.back()=='0'){
		tmp--;
	}
	int i=0;
	if(s[0]=='0'){
		i=1;
	}
	else{
		i=0;
	}
	ans=50;
	for(i;i<=tmp;i+=2)
	{
		
		for(int j=i;j<=tmp;j+=2){
		sum=0;
			for(int k=i-2;k>=0;k-=2){
				sum+=a[k];
			}
			for(int k=i;k<=j-2;k+=2){
				sum+=a[k+1];
			}
			for(int k=j+2;k<=tmp;k+=2){
				sum+=a[k];
			}
			//cout<<i<<" "<<j<<" "<<sum<<endl;
			ans=min(ans,sum);
		}
		
	}
//	for(i;i<=tmp;i+=2){
//			sum+=a[i];
//			if(tmp-i==2){
//				ans+=min(min(sum,a[tmp-1]),a[tmp]);
//				break;
//			}
//			else if(tmp-i>2){
//				if(sum<=a[i+1]){
//					sum=0;
//					ans+=a[i];
//				}
//				else{
//					ans+=a[i+1];
//				}
//			}
//	}
	cout<<ans<<endl;
	
} 

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3488kb

input:

00011011001

output:

2

result:

ok 1 number(s): "2"

Test #2:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

11101111111111111101001011110111111110011101010110

output:

11

result:

ok 1 number(s): "11"

Test #3:

score: 0
Accepted
time: 0ms
memory: 3488kb

input:

00000000100000000000100000010001000

output:

3

result:

ok 1 number(s): "3"

Test #4:

score: -100
Wrong Answer
time: 0ms
memory: 3848kb

input:

00000000000000000000000000000000000000000000000000

output:

50

result:

wrong answer 1st numbers differ - expected: '0', found: '50'