#include #include typedef unsigned int tfn; tfn f[42]; char p[42]; int main(void){ int i,j; tfn c1,c2,c; f[0]=1; f[1]=2; for(i=2;i<=41;i++)f[i]=f[i-1]+f[i-2]; while(1){ i=0; while(1){ c=getchar(); if(c==' ')break; if(c=='\n')return 0; p[i]=c;i++; } j=0; c1=0; while(i--){ if(p[i]=='1')c1+=f[j]; /* printf("i==%d, j==%d, p[i]==%c, f[j]==%d\n", i,j,p[i],f[j]);*/ j++; } /* printf("c1==%d\n",c1);*/ i=0; while(1){ c=getchar(); if(c=='\n')break; p[i]=c;i++; } j=0; c2=0; while(i--){ if(p[i]=='1')c2+=f[j]; j++; } c=c1+c2;i=41; while(f[i]>c && i>0)i--; i++; while(i--){ if(c>=f[i]){c-=f[i];putchar('1');} else putchar('0'); } putchar('\n'); } return 0; }