#include #include #include #include #include using namespace std; #define FOR(i,n) for(int i = 0; i < n; i++) int main(void){ int kladne; signed char pole[1000003]; while(gets((char*) &pole[2])) { pole[0] = '0'; pole[1] = '0'; int n = strlen((char*)pole); FOR(i, n) { pole[i] -= '0'; } pole[n-1]++; kladne = 1; for (int i = n-1; i >= 0; i--) { if (kladne) { if (pole[i] == 2) { pole[i] = 0; pole[i-1]++; pole[i-2]++; } if (pole[i] == -1) { pole[i] = 1; pole[i-1]++; } } else { if (pole[i] == 2) { pole[i] = 0; pole[i-1]--; } } kladne = !kladne; } int i = 0; while (pole[i] == 0) i++; int nula = 0; for (int j = i; j < n; j++) { nula++; printf("%d", pole[j]); } if (!nula) printf("0"); printf("\n"); } return 0; }