Task: | Inversions |
Sender: | DualCore |
Submission time: | 2018-05-26 12:09:34 +0300 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.04 s | details |
#2 | ACCEPTED | 0.03 s | details |
#3 | ACCEPTED | 0.05 s | details |
#4 | ACCEPTED | 0.06 s | details |
#5 | ACCEPTED | 0.04 s | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:19:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < input.length() - 1; ++i) ~~^~~~~~~~~~~~~~~~~~~~ input/code.cpp:40:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < input.length() - 1; ++i) ~~^~~~~~~~~~~~~~~~~~~~
Code
/* * main.cpp * * Created on: May 26, 2018 * Author: guest132 */ #include <iostream> #include <string> #include <cmath> int main() { std::string input; std::getline(std::cin, input); int count1 = 0; for (int i = 0; i < input.length() - 1; ++i) { int L = 0; int R = input[i] - '0'; if (L != R) ++count1; ++i; L = 1; R = input[i] - '0'; if (L != R) ++count1; } if (input.length() % 2 == 1) { int L = 0; int R = input[input.length() - 1] - '0'; if (L != R) ++count1; } int count2 = 0; for (int i = 0; i < input.length() - 1; ++i) { int L = 1; int R = input[i] - '0'; if (L != R) ++count2; ++i; L = 0; R = input[i] - '0'; if (L != R) ++count2; } if (input.length() % 2 == 1) { int L = 1; int R = input[input.length() - 1] - '0'; if (L != R) ++count2; } std::cout << std::min(count1, count2); }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
000000000000000000000000000000... |
correct output |
---|
500000 |
user output |
---|
500000 |
Test 2
Verdict: ACCEPTED
input |
---|
111111111111111111111111111111... |
correct output |
---|
500000 |
user output |
---|
500000 |
Test 3
Verdict: ACCEPTED
input |
---|
010101010101010101010101010101... |
correct output |
---|
0 |
user output |
---|
0 |
Test 4
Verdict: ACCEPTED
input |
---|
101010101010101010101010101010... |
correct output |
---|
0 |
user output |
---|
0 |
Test 5
Verdict: ACCEPTED
input |
---|
110101011010110100100111110110... |
correct output |
---|
499476 |
user output |
---|
499476 |