#include <iostream> #include <string> #include <stack> using namespace std; string divide(string a,int &binary){ int remainder=0,num=0; for (int i = 0; i < a.size(); ++i) { int current=remainder*10+a[i]-'0'; a[i]=current/2+'0'; remainder=current%2; } binary=remainder; while (a[num]=='0'){ num++; } a=a.substr(num); return a; } int main() { string a; stack<int> num; int x; while (cin>>a){ while (a!="0"&&a!="1"){ a= divide(a,x); num.push(x); } if (a=="0"){ num.push(0); } else { num.push(1); } for (int i = 0; !num.empty(); ++i) { cout<<num.top(); num.pop(); } cout<<endl; } }