#include #include int na[100],nb[100],r[100]; int xa[100],xb[100]; int la,lb; void gnum(int *dig, int *len) { int l,c; l=0; while(1) { c=fgetc(stdin); if(c!='0' && c!='1') break; dig[l++]=c-'0'; } *len=l; } void prn(int *n) { int i; i=90; while(!n[i] && i>0) i--; while(i>=0) { putchar(n[i]+'0'); i--; } putchar('\n'); } void can(int *n) { int l; int again; while(1) { again=0; l=95; while(l>0) { if(n[l] && n[l-1]) { n[l+1]=1; n[l]=n[l-1]=0; if(n[l+2]>0) { again=1; } } l--; } if(!again) break; } } int len(int *n) { int i; i=90; while(!n[i] && i>0) i--; return i+1; } int do_it(void) { int i,tlen,l; gnum(na,&la); if(la<1) return 0; gnum(nb,&lb); for(i=0;i<100;i++) { xa[i]=xb[i]=0; } for(i=0;i1) { if(i>=2) { r[i+1]++; r[i-2]++; r[i]-=2; } else { if(i==0) { r[1]++; r[0]-=2; } else { r[2]++;r[0]++; r[1]-=2; } } } else { break; } } can(r); tlen = len(r)+2; l=len(xa); for(i=l;i