QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#297327#6628. Flip it and Stick itMysterious_Cat13 2ms4540kbC++142.7kb2024-01-04 10:58:242024-01-04 10:58:24

Judging History

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

  • [2024-01-04 10:58:24]
  • 评测
  • 测评结果:13
  • 用时:2ms
  • 内存:4540kb
  • [2024-01-04 10:58:24]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;

const int N = 2e5 + 5;

string s, t;

int main() {
    // freopen("a.in", "r", stdin);
    // freopen("a.out", "w", stdout);
    ios::sync_with_stdio(0); cin.tie(0);
    cin >> s >> t;
    if (t == "0" || t == "1") {
        for (char c : s) {
            if (c == t[0]) {
                cout << "-1\n";
                return 0;
            }
        }
        cout << "0\n";
    }
    if (t == "00" || t == "11") {
        int k = t[0] - '0', ans = 0, cnt = 0, c[2] = {};
        for (int i = 0; i < s.size(); i++) {
            if (i && s[i] != s[i - 1]) {
                c[s[i - 1] - '0'] += cnt;
                if (s[i - 1] == t[0]) {
                    ans += cnt - 1;
                }
                cnt = 0;
            }
            cnt++;
        }
        c[s.back() - '0'] += cnt;
        if (s.back() == t[0]) {
            ans += cnt - 1;
        }
        if (c[k] <= c[k ^ 1] + 1) {
            cout << ans << '\n';
        }
        else {
            cout << "-1\n";
        }
    }
    if (t == "01" || t == "10") {
        int ans = 0;
        for (int i = 1; i < s.size(); i++) {
            if (s[i - 1] == t[0] && s[i] == t[1]) {
                ans++;
            }
        }
        cout << ans << '\n';
    }
    if (t == "000" || t == "111") {
        int k = t[0] - '0', n = 0, cnt = 0, c[2] = {0}, a[N] = {0};
        for (int i = 0; i < s.size(); i++) {
            cnt++;
            if (i == s.size() - 1 || s[i] != s[i + 1]) {
                c[s[i] - '0'] += cnt;
                if (s[i] == t[0]) {
                    a[++n] = cnt;
                }
                cnt = 0;
            }
        }
        if ((c[k] - 1) / 2 > c[k ^ 1]) {
            cout << "-1\n";
        }
        else {
            int ans1 = 0, ans2 = 0;
            for (int i = 1; i <= n; i++) {
                if (a[i] == 1) {
                    continue;
                }
                if (a[i] & 1) {
                    ans2++;
                }
                ans1 += a[i] / 2 - 1;
            }
            while (c[k ^ 1] - n + 1 < ans1) {
                ans2++;
                n--;
            }
            cout << ans1 + ans2 << '\n';
        }
    }
    if (t == "010" || t == "101" || t == "001" || t == "011" || t == "100" || t == "110") {
        int ans = 0;
        for (int i = 2; i < s.size(); i++) {
            if (s[i - 2] == t[0] && s[i - 1] == t[1] && s[i] == t[2]) {
                ans++;
            }
        }
        if (t == "010" || t == "101") {
            ans = (ans - 1) / 2 + 1;
        }
        cout << ans << '\n';
    }

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 1
Accepted

Test #1:

score: 1
Accepted
time: 1ms
memory: 4228kb

input:

1
0

output:

0

result:

ok 1 number(s): "0"

Test #2:

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

input:

1
1

output:

-1

result:

ok 1 number(s): "-1"

Test #3:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

-1

result:

ok 1 number(s): "-1"

Test #4:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

0

result:

ok 1 number(s): "0"

Test #5:

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

input:

101001000011101010101001001010010110111111001100110001111101111110110110101011111010001101111001101101010111101100000110001110001100000101111100000110111110001010101101101110001000011010000101000110110010110110100001110001111001010000000010000000101000000100110011101110100111111101111111111110010101...

output:

-1

result:

ok 1 number(s): "-1"

Test #6:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #7:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

-1

result:

ok 1 number(s): "-1"

Subtask #2:

score: 3
Accepted

Test #8:

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

input:

0
01

output:

0

result:

ok 1 number(s): "0"

Test #9:

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

input:

0
10

output:

0

result:

ok 1 number(s): "0"

Test #10:

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

input:

01
01

output:

1

result:

ok 1 number(s): "1"

Test #11:

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

input:

01
10

output:

0

result:

ok 1 number(s): "0"

Test #12:

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

input:

1010101010
10

output:

5

result:

ok 1 number(s): "5"

Test #13:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #14:

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

input:

100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #15:

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

input:

010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101...

output:

100000

result:

ok 1 number(s): "100000"

Test #16:

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

input:

000110111001011000010001010010010000010100100000011101010000001000110011100000011011100101110110000001000000000011001010001101001110011111001101110010001100000000010000000100100011000111010011100110011101100011000100011001010000010001001010010101100000100000010010110000000001011100100001000010100100...

output:

43860

result:

ok 1 number(s): "43860"

Test #17:

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

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: 4404kb

input:

0
01

output:

0

result:

ok 1 number(s): "0"

Test #19:

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

input:

0
10

output:

0

result:

ok 1 number(s): "0"

Test #20:

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

input:

01
01

output:

1

result:

ok 1 number(s): "1"

Test #21:

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

input:

01
10

output:

0

result:

ok 1 number(s): "0"

Test #22:

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

input:

1
00

output:

0

result:

ok 1 number(s): "0"

Test #23:

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

input:

1
11

output:

0

result:

ok 1 number(s): "0"

Test #24:

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

input:

10
00

output:

0

result:

ok 1 number(s): "0"

Test #25:

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

input:

11
11

output:

-1

result:

ok 1 number(s): "-1"

Test #26:

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

input:

1010101010
10

output:

5

result:

ok 1 number(s): "5"

Test #27:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #28:

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

input:

100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #29:

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

input:

010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101...

output:

100000

result:

ok 1 number(s): "100000"

Test #30:

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

input:

001000001110000110101100000001110000011000100001010001110010010101110110111000000000100000010110100000101110001000001010000000010101000010001000100010111010000110000001000001100110001010000010000101001001110100000011001000100100100101000101000100000100001001000000111000100101010010101100101001001010...

output:

43612

result:

ok 1 number(s): "43612"

Test #31:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

43815

result:

ok 1 number(s): "43815"

Test #32:

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

input:

0011001101
00

output:

2

result:

ok 1 number(s): "2"

Test #33:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

1

result:

ok 1 number(s): "1"

Test #34:

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

input:

011110101001110000100100101010111010100110011010001001000110011111010101111000110100000110010011001010111001000110000110001110110100011111100010111010101101001100101110100001101111110110000100110110111001000001101110011010100110000111101101101111011000110010100100100001000011010100000100110101001000...

output:

50001

result:

ok 1 number(s): "50001"

Test #35:

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

input:

111011011000111010010001101100000110011000000101110011111110010110001010001000011100011100101011110101101001011101010011110100011101111111000011110101010001000011000100110001011110100010111101111110011001010110011001110111001011000000110100000011001110110110000101010100001001110100111010100100100101...

output:

-1

result:

ok 1 number(s): "-1"

Test #36:

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

input:

110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110...

output:

50000

result:

ok 1 number(s): "50000"

Test #37:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

99999

result:

ok 1 number(s): "99999"

Test #38:

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

input:

000100100001010000001000011101100101000000000000100000101000100110111001000100000000001000100011101100010010100100000011110101010010010001000001000010000011101000011101010010000110000001000000010100001100010011001001010100010001010000001101101001010110011001000001110000001100010001000101000010110000...

output:

24091

result:

ok 1 number(s): "24091"

Test #39:

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

input:

011000011010000110001000000000100110011001001101011100010010100000100011010110010010011101100000011100110100001010000000100010011100001010010100000100000000100010010101110000001000001010111001100001001011101011110011100101110110101010110000100010001110111010111010000000101111010001010000001111111001...

output:

58668

result:

ok 1 number(s): "58668"

Subtask #4:

score: 5
Accepted

Test #40:

score: 5
Accepted
time: 1ms
memory: 4236kb

input:

11
011

output:

0

result:

ok 1 number(s): "0"

Test #41:

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

input:

0
110

output:

0

result:

ok 1 number(s): "0"

Test #42:

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

input:

01
100

output:

0

result:

ok 1 number(s): "0"

Test #43:

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

input:

110
110

output:

1

result:

ok 1 number(s): "1"

Test #44:

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

input:

010
001

output:

0

result:

ok 1 number(s): "0"

Test #45:

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

input:

001001001001
001

output:

4

result:

ok 1 number(s): "4"

Test #46:

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

input:

000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

output:

0

result:

ok 1 number(s): "0"

Test #47:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

0

result:

ok 1 number(s): "0"

Test #48:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

24856

result:

ok 1 number(s): "24856"

Test #49:

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

input:

111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

output:

0

result:

ok 1 number(s): "0"

Test #50:

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

input:

010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010010...

output:

62521

result:

ok 1 number(s): "62521"

Test #51:

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

input:

011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011011...

output:

66666

result:

ok 1 number(s): "66666"

Test #52:

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

input:

110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110110...

output:

66666

result:

ok 1 number(s): "66666"

Subtask #5:

score: 0
Wrong Answer

Test #53:

score: 5
Accepted
time: 1ms
memory: 4240kb

input:

11
011

output:

0

result:

ok 1 number(s): "0"

Test #54:

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

input:

01
100

output:

0

result:

ok 1 number(s): "0"

Test #55:

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

input:

011
011

output:

1

result:

ok 1 number(s): "1"

Test #56:

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

input:

010
100

output:

0

result:

ok 1 number(s): "0"

Test #57:

score: -5
Wrong Answer
time: 1ms
memory: 4232kb

input:

0
010

output:

1

result:

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

Subtask #6:

score: 0
Skipped

Dependency #4:

100%
Accepted

Dependency #5:

0%