#include <stdio.h>
#include <stdlib.h>
#include<string.h>
int divide(char* str, int x, int size, int* pos);
int main() {
char* str = (char*)malloc(32);
int stack[128];
while (scanf("%s", str) != EOF) { // 注意 while 处理多个 case
// 64 位输出请用 printf("%lld") to
int top = -1,temp = 0;
int *pos = &temp;
while (*pos != strlen(str)) {
int last = str[strlen(str) - 1] - '0';
stack[++top] = last % 2;
divide(str, 2, strlen(str), pos);
}
while (top != -1) {
printf("%d", stack[top--]);
}
printf("\n");
}
return 0;
}
int divide(char* str, int x, int size, int* pos) {
int remainder = 0;
for (int i = *pos; i < size; i++) {
int current = remainder * 10 + str[i] - '0';
str[i] = current / x + '0';
remainder = current % x;
}
while (str[*pos] == '0') {
(*pos)++;
}
return *pos;
}