QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#549322#9229. Juliet Unifies OnesAmanicus#WA 0ms3832kbC++141.2kb2024-09-06 14:21:232024-09-06 14:21:26

Judging History

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

  • [2024-09-06 14:21:26]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3832kb
  • [2024-09-06 14:21:23]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
using ll =long long ;
vector<ll>a1,a0;
ll b1[100],b0[100];
ll dp1[100][5],dp2[100][5];
int main()
{
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
	string s;
	cin>>s;
	ll n=s.size();
	ll f=0;
	for(ll i=0;i<n;i++)
	{
		if(s[i]=='1')
		{
			f=1;
			ll j;
			for(j=i;j<n;j++)
			{
				if(s[j]!=s[i])
				{
					break;
				}
			}
			a1.push_back(j-i);
			i=j-1;
		}
		else if(s[i]=='0'&&f==1)
		{
			ll j;
			for(j=i;j<n;j++)
			{
				if(s[j]!=s[i])
				{
					break;
				}
				
			}
			a1.push_back(j-i);
			i=j-1;
		}
	}
	ll l1=a1.size(),ff=0,ans1=0,ans2=0,i,sum=0;
	a1.push_back(0);
	a1.push_back(0);
	if(l1%2==0&&l1!=0)
	{
		a1[l1-1]=0;
		l1--;
	}
	for(i=0;i<l1;i+=2) 
	{
		if(a1[i]>a1[i+1])
		{
			break;
		}
		ans1+=a1[i];
	}
	
	ll j;
	for(j=i;j<l1;j+=2)
	{
		dp1[j+1][0]=dp1[j-1][0]+a1[j+1];
		dp1[j+1][1]=min(dp1[j-1][1],dp1[j-1][0])+a1[j+2];
	}
	for(i=0;i<l1;i+=2) 
	{
		if(a1[i]>=a1[i+1])
		{
			break;
		}
		ans2+=a1[i];
	}
	for(j=i;j<l1;j+=2)
	{
		dp2[j+1][0]=dp2[j-1][0]+a1[j+1];
		dp2[j+1][1]=min(dp2[j-1][1],dp2[j-1][0])+a1[j+2];
	}
	cout<<min(min(dp1[j-1][0],dp1[j-1][1])+ans1,min(dp2[j-1][0],dp2[j-1][1])+ans2)<<'\n';
}

详细

Test #1:

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

input:

00011011001

output:

2

result:

ok 1 number(s): "2"

Test #2:

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

input:

11101111111111111101001011110111111110011101010110

output:

11

result:

ok 1 number(s): "11"

Test #3:

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

input:

00000000100000000000100000010001000

output:

3

result:

ok 1 number(s): "3"

Test #4:

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

input:

00000000000000000000000000000000000000000000000000

output:

0

result:

ok 1 number(s): "0"

Test #5:

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

input:

00000000100000000000100000011000

output:

2

result:

ok 1 number(s): "2"

Test #6:

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

input:

11000010100100000011101100000001000100000000000000

output:

8

result:

ok 1 number(s): "8"

Test #7:

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

input:

01100100111011110101010110000100001111110001110001

output:

19

result:

ok 1 number(s): "19"

Test #8:

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

input:

1110101111001

output:

3

result:

ok 1 number(s): "3"

Test #9:

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

input:

1

output:

0

result:

ok 1 number(s): "0"

Test #10:

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

input:

1001

output:

1

result:

ok 1 number(s): "1"

Test #11:

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

input:

11111111111111111111111111111111111111111111111111

output:

0

result:

ok 1 number(s): "0"

Test #12:

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

input:

11111100000000001101010101100011

output:

12

result:

wrong answer 1st numbers differ - expected: '9', found: '12'