/*#include <stdio.h>
long long int n;
long long int f(long long int n)
{
long long int rev=0;
while(n>0)
{
rev=rev*10+n%10;
n=n/10;
}
return rev;
}
int main()
{
scanf("%lld", &n);
printf("%lld\n", f(n));
}*//*
#include <stdio.h>
int main()
{
int n, rev=0,sum=0;
scanf("%d", &n);
while(n>0)
{
rev=rev*10+n%10;
sum=sum+n%10;
n=n/10;
}
printf("%d\n%d", rev, sum);
}
*//*
#include <stdio.h>
int sum(int n)
{
int sum1=0;
while (n>0)
{
sum1=sum1+n%10;
n=n/10;
}
return sum1;
}
int main()
{
int n;
scanf("%d", &n);
while (n>=10)
{
n=sum(n);
}
printf("%d",n);
return 0;
}*//*
#include <stdio.h>
void rec(int n)
{
if (n==0)
{
return;
}
rec(n-1);
printf("%d\n", n);
return;
}
int main()
{
int n;
scanf("%d",&n);
rec(n);
}*//*
#include <stdio.h>
void rec(int n,int a)
{
if (n==0)
{
return;
}
rec(n-1,a);
printf("%d\n", a-n+1);
return;
}
int main()
{
int n,a;
scanf("%d",&n);
a=n;
rec(n,a);
}*//*
#include <stdio.h>
void rec(int a, int b)
{
if(a>b) return ;
if(a%2==1) printf("%d ",a);
rec(a+1,b);
}
int main()
{
int a,b;
scanf("%d %d", &a, &b);
rec(a,b);
return 0;
}*//*
#include <stdio.h>
int rec(int n)
{
if (n==1)
{
return 1;
}
n=rec(n-1)+n;
//printf("%d/", a);
return n;
}
int main()
{
int n;
scanf("%d", &n);
printf("%d", rec(n));
}
*//*
#include <stdio.h>
int rec(int n)
{
if (n==1) return 1;
n=rec(n-1)*n;
return n;
}
int main()
{
int n;
scanf("%d", &n);
printf("%d", rec(n));
}*//*
#include <stdio.h>
long long int rec(long long int n)
{
if (n<3)
{
return 1;
}
n=rec(n-1)+rec(n-2);
return n;
}*//*
피보나치 수열
rec(n)== 피보나치 수열의 곳;
rec(n)== rec(n-1)+rec(n-2)
*//*int main()
{
long long int n;
scanf("%lld", &n);
printf("%lld", rec(n));
return 0;
}*/
#include <stdio.h>
void rec(int n)
{
if (n==0) return;
rec(n/2);
printf("%d", n%2);
return;
}
//rec(n)==2로 나눈 수의 마지막 번째의 나머지
int main()
{
int n;
scanf("%d", &n);
if (n==0) printf("0");
else
{
rec(n);
}
}