QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#115829#6628. Flip it and Stick itAFewSuns8 3ms3884kbC++142.5kb2023-06-27 14:40:432023-06-27 14:40:45

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-06-27 14:40:45]
  • 评测
  • 测评结果:8
  • 用时:3ms
  • 内存:3884kb
  • [2023-06-27 14:40:43]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
namespace my_std{
	#define ll long long
	#define bl bool
	ll my_pow(ll a,ll b,ll mod){
		ll res=1;
		if(!b) return 1;
		while(b){
			if(b&1) res=(res*a)%mod;
			a=(a*a)%mod;
			b>>=1;
		}
		return res;
	}
	ll qpow(ll a,ll b){
		ll res=1;
		if(!b) return 1;
		while(b){
			if(b&1) res*=a;
			a*=a;
			b>>=1;
		}
		return res;
	}
	#define db double
	#define pf printf
	#define pc putchar
	#define fr(i,x,y) for(register ll i=(x);i<=(y);i++)
	#define pfr(i,x,y) for(register ll i=(x);i>=(y);i--)
	#define go(u) for(ll i=head[u];i;i=e[i].nxt)
	#define enter pc('\n')
	#define space pc(' ')
	#define fir first
	#define sec second
	#define MP make_pair
	#define il inline
	#define inf 8e18
	#define random(x) rand()*rand()%(x)
	#define inv(a,mod) my_pow((a),(mod-2),(mod))
	il ll read(){
		ll sum=0,f=1;
		char ch=0;
		while(!isdigit(ch)){
			if(ch=='-') f=-1;
			ch=getchar();
		}
		while(isdigit(ch)){
			sum=sum*10+(ch^48);
			ch=getchar();
		}
		return sum*f;
	}
	il void write(ll x){
		if(x<0){
			x=-x;
			pc('-');
		}
		if(x>9) write(x/10);
		pc(x%10+'0');
	}
	il void writeln(ll x){
		write(x);
		enter;
	}
	il void writesp(ll x){
		write(x);
		space;
	}
}
using namespace my_std;
ll n,m;
char s[200020],t[4];
int main(){
	scanf("%s",s+1);
	scanf("%s",t+1);
	n=strlen(s+1);
	m=strlen(t+1);
	if(t[1]=='1'){
		fr(i,1,n) s[i]^=1;
		fr(i,1,m) t[i]^=1;
	}
	if(m==1){
		bl ck=0;
		fr(i,1,n) if(s[i]=='0') ck=1;
		if(!ck) write(0);
		else write(-1);
		return 0;
	}
	if(m==2){
		if(t[2]=='1'){
			ll cnt=0;
			fr(i,1,n-1) if(s[i]=='0'&&s[i+1]=='1') cnt++;
			write(cnt);
		}
		else{
			ll cnt0=0,cnt1=0,cnt=0;
			fr(i,1,n){
				if(s[i]=='0') cnt0++;
				if(s[i]=='1') cnt1++;
				if(i<n&&s[i]=='0'&&s[i+1]=='0') cnt++;
			}
			if(cnt1<(cnt0-1)) write(-1);
			else write(cnt);
		}
		return 0;
	}
	if(t[2]=='1'&&t[3]=='1'){
		reverse(s+1,s+n+1);
		reverse(t+1,t+m+1);
		fr(i,1,n) s[i]^=1;
		fr(i,1,m) t[i]^=1;
	}
	if(t[2]=='1'){
		ll cnt=0;
		fr(i,2,n-1) if(s[i]=='1'&&s[i-1]=='0'&&s[i+1]=='0') cnt++;
		write((cnt+1)/2);
		return 0;
	}
	if(t[3]=='1'){
		ll lst=0,cnt=0;
		fr(i,1,n){
			if(s[i]=='1'){
				if(lst<(i-2)) cnt++;
				lst=i;
			}
		}
		write(cnt);
		return 0;
	}
	ll lst=0,cnt0=0,cnt1=0,cnt=0;
	fr(i,1,n){
		if(s[i]=='0') cnt0++;
		else{
			cnt1++;
			cnt+=(i-lst-2)/2;
			lst=i;
		}
	}
	cnt+=(n-lst-1)/2;
	if((cnt0-1)/2>cnt1) write(-1);
	else write(cnt);
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 1
Accepted

Test #1:

score: 1
Accepted
time: 0ms
memory: 3564kb

input:

1
0

output:

0

result:

ok 1 number(s): "0"

Test #2:

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

input:

1
1

output:

-1

result:

ok 1 number(s): "-1"

Test #3:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

-1

result:

ok 1 number(s): "-1"

Test #4:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

0

result:

ok 1 number(s): "0"

Test #5:

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

input:

101001000011101010101001001010010110111111001100110001111101111110110110101011111010001101111001101101010111101100000110001110001100000101111100000110111110001010101101101110001000011010000101000110110010110110100001110001111001010000000010000000101000000100110011101110100111111101111111111110010101...

output:

-1

result:

ok 1 number(s): "-1"

Test #6:

score: 0
Accepted
time: 2ms
memory: 3716kb

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #7:

score: 0
Accepted
time: 2ms
memory: 3696kb

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

-1

result:

ok 1 number(s): "-1"

Subtask #2:

score: 3
Accepted

Test #8:

score: 3
Accepted
time: 1ms
memory: 3396kb

input:

0
01

output:

0

result:

ok 1 number(s): "0"

Test #9:

score: 0
Accepted
time: 1ms
memory: 3400kb

input:

0
10

output:

0

result:

ok 1 number(s): "0"

Test #10:

score: 0
Accepted
time: 1ms
memory: 3400kb

input:

01
01

output:

1

result:

ok 1 number(s): "1"

Test #11:

score: 0
Accepted
time: 1ms
memory: 3408kb

input:

01
10

output:

0

result:

ok 1 number(s): "0"

Test #12:

score: 0
Accepted
time: 1ms
memory: 3340kb

input:

1010101010
10

output:

5

result:

ok 1 number(s): "5"

Test #13:

score: 0
Accepted
time: 2ms
memory: 3856kb

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #14:

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

input:

100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #15:

score: 0
Accepted
time: 2ms
memory: 3580kb

input:

010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101...

output:

100000

result:

ok 1 number(s): "100000"

Test #16:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

000110111001011000010001010010010000010100100000011101010000001000110011100000011011100101110110000001000000000011001010001101001110011111001101110010001100000000010000000100100011000111010011100110011101100011000100011001010000010001001010010101100000100000010010110000000001011100100001000010100100...

output:

43860

result:

ok 1 number(s): "43860"

Test #17:

score: 0
Accepted
time: 1ms
memory: 3584kb

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

44072

result:

ok 1 number(s): "44072"

Subtask #3:

score: 4
Accepted

Dependency #2:

100%
Accepted

Test #18:

score: 4
Accepted
time: 1ms
memory: 3520kb

input:

0
01

output:

0

result:

ok 1 number(s): "0"

Test #19:

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

input:

0
10

output:

0

result:

ok 1 number(s): "0"

Test #20:

score: 0
Accepted
time: 1ms
memory: 3408kb

input:

01
01

output:

1

result:

ok 1 number(s): "1"

Test #21:

score: 0
Accepted
time: 1ms
memory: 3508kb

input:

01
10

output:

0

result:

ok 1 number(s): "0"

Test #22:

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

input:

1
00

output:

0

result:

ok 1 number(s): "0"

Test #23:

score: 0
Accepted
time: 1ms
memory: 3564kb

input:

1
11

output:

0

result:

ok 1 number(s): "0"

Test #24:

score: 0
Accepted
time: 1ms
memory: 3528kb

input:

10
00

output:

0

result:

ok 1 number(s): "0"

Test #25:

score: 0
Accepted
time: 1ms
memory: 3516kb

input:

11
11

output:

-1

result:

ok 1 number(s): "-1"

Test #26:

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

input:

1010101010
10

output:

5

result:

ok 1 number(s): "5"

Test #27:

score: 0
Accepted
time: 2ms
memory: 3676kb

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #28:

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

input:

100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #29:

score: 0
Accepted
time: 2ms
memory: 3704kb

input:

010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101...

output:

100000

result:

ok 1 number(s): "100000"

Test #30:

score: 0
Accepted
time: 2ms
memory: 3696kb

input:

001000001110000110101100000001110000011000100001010001110010010101110110111000000000100000010110100000101110001000001010000000010101000010001000100010111010000110000001000001100110001010000010000101001001110100000011001000100100100101000101000100000100001001000000111000100101010010101100101001001010...

output:

43612

result:

ok 1 number(s): "43612"

Test #31:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

43815

result:

ok 1 number(s): "43815"

Test #32:

score: 0
Accepted
time: 1ms
memory: 3396kb

input:

0011001101
00

output:

2

result:

ok 1 number(s): "2"

Test #33:

score: 0
Accepted
time: 2ms
memory: 3844kb

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

1

result:

ok 1 number(s): "1"

Test #34:

score: 0
Accepted
time: 3ms
memory: 3708kb

input:

011110101001110000100100101010111010100110011010001001000110011111010101111000110100000110010011001010111001000110000110001110110100011111100010111010101101001100101110100001101111110110000100110110111001000001101110011010100110000111101101101111011000110010100100100001000011010100000100110101001000...

output:

50001

result:

ok 1 number(s): "50001"

Test #35:

score: 0
Accepted
time: 3ms
memory: 3596kb

input:

111011011000111010010001101100000110011000000101110011111110010110001010001000011100011100101011110101101001011101010011110100011101111111000011110101010001000011000100110001011110100010111101111110011001010110011001110111001011000000110100000011001110110110000101010100001001110100111010100100100101...

output:

-1

result:

ok 1 number(s): "-1"

Test #36:

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

input:

110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110...

output:

50000

result:

ok 1 number(s): "50000"

Test #37:

score: 0
Accepted
time: 2ms
memory: 3688kb

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

99999

result:

ok 1 number(s): "99999"

Test #38:

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

input:

000100100001010000001000011101100101000000000000100000101000100110111001000100000000001000100011101100010010100100000011110101010010010001000001000010000011101000011101010010000110000001000000010100001100010011001001010100010001010000001101101001010110011001000001110000001100010001000101000010110000...

output:

24091

result:

ok 1 number(s): "24091"

Test #39:

score: 0
Accepted
time: 2ms
memory: 3704kb

input:

011000011010000110001000000000100110011001001101011100010010100000100011010110010010011101100000011100110100001010000000100010011100001010010100000100000000100010010101110000001000001010111001100001001011101011110011100101110110101010110000100010001110111010111010000000101111010001010000001111111001...

output:

58668

result:

ok 1 number(s): "58668"

Subtask #4:

score: 0
Time Limit Exceeded

Test #40:

score: 0
Time Limit Exceeded

input:

11
011

output:


result:


Subtask #5:

score: 0
Time Limit Exceeded

Test #53:

score: 0
Time Limit Exceeded

input:

11
011

output:


result:


Subtask #6:

score: 0
Skipped

Dependency #4:

0%