#include<iostream>
#include<string>
using namespace std;
char lala[100000];
int main()
{
int n;
cin >> n;
for(int i=1; i <= n; i++){
string str1,str2;
int num=0;
cin >> str1 >> str2;
cout << i << " ";
int len1=str1.length();
len1--;
int len2=str2.length();
len2--;
//int min=(len1>len2)?len2:len1;
//int max=(len1<len2)?len2:len1;
int jinwei=0;
while(len1 >= 0&&len2 >=0){
if(str1[len1]=='1'&&str2[len2]=='1'&&jinwei==0){
lala[num]='0';
jinwei=1;
}
else if(str1[len1]=='1'&&str2[len2]=='1'&&jinwei==1){
lala[num]='1';
jinwei=1;
}
else if(((str1[len1]=='0'&&str2[len2]=='1')||(str1[len1]=='1'&&str2[len2]=='0'))&&jinwei==1){
lala[num]='0';
jinwei=1;
}
else if(((str1[len1]=='0'&&str2[len2]=='1')||(str1[len1]=='1'&&str2[len2]=='0'))&&jinwei==0){
lala[num]='1';
jinwei=0;
}
else if(str1[len1]=='0'&&str2[len2]=='0'&&jinwei==1){
lala[num]='1';
jinwei=0;
}
else if(str1[len1]=='0'&&str2[len2]=='0'&&jinwei==0){
lala[num]='0';
jinwei=0;
}
len1--;len2--;
num++;
}
if(len1==len2&&jinwei==1){
lala[num]='1';
num++;
}
//string str_max;
//if(len1>len2) str_max=str1;
//else str_max=str2;
if(len2<0){
for(int j=len1; j >=0 ; j--){
if(str1[j]=='0'&&jinwei==1){
lala[num]='1';
jinwei=0;
}
else if(str1[j]=='0'&&jinwei==0){
lala[num]='0';
jinwei=0;
}
else if(str1[j]=='1'&&jinwei==1){
lala[num]='0';
jinwei=1;
}
else if(str1[j]=='1'&&jinwei==0){
lala[num]='1';
jinwei=0;
}
num++;
if(j==0&&str1[j]=='1'&&jinwei==1){
lala[num]='1';
num++;
}
}
}
else if(len1<0){
for(int j=len2; j >=0 ; j--){
if(str2[j]=='0'&&jinwei==1){
lala[num]='1';
jinwei=0;
}
else if(str2[j]=='0'&&jinwei==0){
lala[num]='0';
jinwei=0;
}
else if(str2[j]=='1'&&jinwei==1){
lala[num]='0';
jinwei=1;
}
else if(str2[j]=='1'&&jinwei==0){
lala[num]='1';
jinwei=0;
}
num++;
if(j==0&&str2[j]=='1'&&jinwei==1){
lala[num]='1';
num++;
}
}
}
int k;
for(k=num-1; k>=0;k--){
if(lala[k]!='0') break;
}
if(k<0) cout << '0' <<endl;
else {for(k;k>=0;k--)
cout << lala[k];
cout << endl;
}
}
}
Sicily 1201. 01000001
最新推荐文章于 2017-02-20 19:57:30 发布