QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#872159 | #9229. Juliet Unifies Ones | anahartmann | WA | 0ms | 3712kb | C++14 | 2.2kb | 2025-01-25 23:50:23 | 2025-01-25 23:50:27 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
string s;
cin >> s;
int qt = 0, um = 0, zero = 0, um2 = 0, k = 0;
for (int i = 0; i < (int)s.size(); i++)
{
if (s[i] == '1' && um == 0)
{
um = 1;
zero = 0;
}
else if (s[i] == '1' && zero > 0)
{
k = i;
um2 = 0;
while (s[k] == '1' && k < (int)s.size())
{
um2++;
k++;
}
// cout << um << " " << um2 << " " << zero << "\n";
qt += min(um, min(zero, um2));
if (um < zero && um < um2)
{
um = 1;
zero = 0;
}
else if (um2 < um && um2 < zero)
{
i = k;
}
else
{
zero = 0;
um++;
}
}
else if (s[i] == '1')
{
um++;
}
else if (s[i] == '0')
{
zero++;
}
}
int qt2 = 0;
um = zero = 0;
for (int i = (int)s.size() - 1; i >= 0; i--)
{
if (s[i] == '1' && um == 0)
{
um += 1;
zero = 0;
}
else if (s[i] == '1' && zero > 0)
{
k = i;
um2 = 0;
while (s[k] == '1' && k >= 0)
{
um2++;
k--;
}
// cout << um << " " << um2 << " " << zero << "\n";
qt2 += min(um, min(zero, um2));
if (um < zero && um < um2)
{
um = 1;
zero = 0;
}
else if (um2 < um && um2 < zero)
{
i = k;
}
else
{
zero = 0;
um++;
}
}
else if (s[i] == '1')
{
um++;
}
else if (s[i] == '0')
{
zero++;
}
}
qt = min(qt, qt2);
cout << qt << "\n";
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3712kb
input:
00011011001
output:
2
result:
ok 1 number(s): "2"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
11101111111111111101001011110111111110011101010110
output:
11
result:
ok 1 number(s): "11"
Test #3:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
00000000100000000000100000010001000
output:
3
result:
ok 1 number(s): "3"
Test #4:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
00000000000000000000000000000000000000000000000000
output:
0
result:
ok 1 number(s): "0"
Test #5:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
00000000100000000000100000011000
output:
2
result:
ok 1 number(s): "2"
Test #6:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
11000010100100000011101100000001000100000000000000
output:
8
result:
ok 1 number(s): "8"
Test #7:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
01100100111011110101010110000100001111110001110001
output:
19
result:
ok 1 number(s): "19"
Test #8:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
1110101111001
output:
3
result:
ok 1 number(s): "3"
Test #9:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
1
output:
0
result:
ok 1 number(s): "0"
Test #10:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
1001
output:
1
result:
ok 1 number(s): "1"
Test #11:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
11111111111111111111111111111111111111111111111111
output:
0
result:
ok 1 number(s): "0"
Test #12:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
11111100000000001101010101100011
output:
9
result:
ok 1 number(s): "9"
Test #13:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
00011011001
output:
2
result:
ok 1 number(s): "2"
Test #14:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
11011
output:
1
result:
ok 1 number(s): "1"
Test #15:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
100011011
output:
2
result:
ok 1 number(s): "2"
Test #16:
score: 0
Accepted
time: 0ms
memory: 3712kb
input:
0
output:
0
result:
ok 1 number(s): "0"
Test #17:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
1010101010011011001101100110011101101011100110110
output:
19
result:
ok 1 number(s): "19"
Test #18:
score: -100
Wrong Answer
time: 0ms
memory: 3584kb
input:
01110100000000111100000011000000000110010001110101
output:
15
result:
wrong answer 1st numbers differ - expected: '14', found: '15'