#include <vector> #include <iostream> using namespace std; int main() { int x,y; while(cin>>x>>y){ if(x<y) swap(x,y);//x>=y vector<int> x_path,y_path; x_path.push_back(x); y_path.push_back(y); while(x!=1&&y!=1){ x/=2; x_path.push_back(x); y/=2; y_path.push_back(y); } while(x!=1){ x/=2; x_path.push_back(x); } while(y!=1){ y/=2; y_path.push_back(y); } // for(int i=0;i<x_path.size();i++) cout<<x_path[i]; // cout<<endl; // for(int j=0;j<y_path.size();j++) cout<<y_path[j]; // cout<<endl; bool flag=false; for(int i=0;i<x_path.size();i++){ for(int j=0;j<y_path.size();j++){ if(x_path[i]==y_path[j]){ flag=true; cout<<x_path[i]<<endl; break; } } if(flag) break; } } return 0; } // 64 位输出请用 printf("%lld")