QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#640578 | #8058. Binary vs Ternary | Rilllo | WA | 1ms | 3800kb | C++23 | 1.6kb | 2024-10-14 14:26:00 | 2024-10-14 14:26:00 |
Judging History
answer
// https://qoj.ac/contest/1522/problem/8056
// Travel 2
#include<bits/stdc++.h>
using i64 = long long;
const int N = 3000;
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
std::cout << std::fixed << std::setprecision(10);
int t;
std::cin >> t;
while (t--) {
std::string a, b;
std::cin >> a >> b;
if (b.size() == 1 || a.size() == 1) {
std::cout << (b == a ? 0 : -1) << "\n";
continue;
}
int len1 = a.length(), len2 = b.length();
int cnt = 0;
std::vector<std::pair<int, int>> ans;
for (int i = 0; i < a.size(); i++) {
if (a[i] == '0') {
cnt++;
ans.emplace_back(i, i + 1);
}
}
if (len1 < len2) {
for (int i = 0; i < len2 - len1; i++) {
ans.emplace_back(1, 2);
ans.emplace_back(1, 2);
ans.emplace_back(2, 3);
}
} else if (len1 > len2) {
for (int i = 0; i < len1 - len2; i++) {
ans.emplace_back(i + 1, i + 2);
}
ans.emplace_back(2, len1 - len2 + 1);
ans.emplace_back(2, 3);
}
int len = len2;
for (int i = 0; i < len; i++) {
if (b[i] == '0') {
ans.emplace_back(i, i + 1);
ans.emplace_back(i + 1, i + 2);
}
}
std::cout << ans.size() << "\n";
for (auto [i, j] : ans) {
std::cout << i << " " << j << "\n";
}
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3496kb
input:
3 1 111 110110 1101010 1111 111111
output:
-1 11 2 3 5 6 1 2 1 2 2 3 2 3 3 4 4 5 5 6 6 7 7 8 6 1 2 1 2 2 3 1 2 1 2 2 3
result:
ok Haitang Suki (3 test cases)
Test #2:
score: -100
Wrong Answer
time: 1ms
memory: 3800kb
input:
1000 11100 111 1 11110 10001 10 1011 1111 10 1110 1100 11 11010 11 110 11 1 10001 10110 10 10 11111 10000 1001 10 1 11 10111 11 10 1 100 11 10100 1 10 101 11 1100 110 11 1110 1 1001 1 11111 10 10010 10 11001 110 1010 10011 1110 10100 1001 1001 101 100 1 1001 11 101 11 101 1001 1 1 1011 1 10 10 1011 ...
output:
6 3 4 4 5 1 2 2 3 2 3 2 3 -1 10 1 2 2 3 3 4 1 2 2 3 3 4 2 4 2 3 1 2 2 3 1 1 2 9 1 2 1 2 1 2 2 3 1 2 1 2 2 3 3 4 4 5 6 2 3 3 4 1 2 2 3 2 3 2 3 7 2 3 4 5 1 2 2 3 3 4 2 4 2 3 4 2 3 1 2 2 2 2 3 -1 9 1 2 4 5 1 2 2 3 3 4 2 4 2 3 1 2 2 3 10 1 2 1 2 1 2 2 3 1 2 1 2 2 3 1 2 1 2 2 3 11 1 2 2 3 3 4 4 5 1 2 2 2...
result:
wrong answer S!=T after all operations (test case 1)