QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#345061 | #8058. Binary vs Ternary | 111445# | WA | 1ms | 3620kb | C++23 | 884b | 2024-03-06 01:52:34 | 2024-03-06 01:52:34 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int i,j,k,n,m,t;
string s1,s2;
vector<pair<int,int> > v;
void add(int x,int y){
v.push_back({x+1,y+1});
}
bool fuck(){
if(s1==s2)return 1;
if(s1=="1"||s2=="1")return 0;
int i,j,k,n;
n=s1.size();
for(i=0;i<n;i++){
if(s1[i]=='0'){
add(i-1,i);
s1[i]='1';
}
}
while(s1.size()>2){
add(0,1);
add(1,3);
s1.pop_back();
}
while(s1.size()<s2.size()){
add(0,1);
add(0,1);
add(1,2);
s1+="1";
}
n=s2.size();
for(i=1;i<n;i++){
if(s2[i]=='0'){
add(i-1,i);
add(i,i+1);
}
}
return 1;
}
int main(){
ios::sync_with_stdio(0); cin.tie(0);
cin>>t;
while(t--){
cin>>s1>>s2;
v={};
if(fuck()){
cout<<v.size()<<'\n';
for(auto [i,j]:v){
cout<<i<<' '<<j<<'\n';
}
}
else cout<<"-1\n";
}
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3604kb
input:
3 1 111 110110 1101010 1111 111111
output:
-1 31 2 3 5 6 1 2 2 4 1 2 2 4 1 2 2 4 1 2 2 4 1 2 1 2 2 3 1 2 1 2 2 3 1 2 1 2 2 3 1 2 1 2 2 3 1 2 1 2 2 3 2 3 3 4 4 5 5 6 6 7 7 8 16 1 2 2 4 1 2 2 4 1 2 1 2 2 3 1 2 1 2 2 3 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: 3620kb
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:
11 3 4 4 5 1 2 2 4 1 2 2 4 1 2 2 4 1 2 1 2 2 3 -1 11 1 2 2 3 3 4 1 2 2 4 1 2 2 4 1 2 2 4 1 2 2 3 11 1 2 1 2 2 4 1 2 2 4 1 2 1 2 2 3 1 2 1 2 2 3 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 4 1 2 2 4 8 2 3 4 5 1 2 2 4 1 2 2 4 1 2 2 4 3 2 3 1 2 2 4 -1 10 1 2 4 5 1 2 2 4 1 2 2 4 1 2 2 4 1 2 2 ...
result:
wrong answer (l,r) is invalid (test case 12)