#include #include using namespace std; int v[1005]; int main() { int sz; string str; cin >> str; for (int i = 0; i < str.size() / 8; ++ i) { for (int j = 8 * i; j < 8 * (i + 1); ++ j) v[i] *= 2, v[i] += (str[j] - '0'); if (str[8 * i] == '1') v[i] = __builtin_ctz(v[i]); else v[i] = -1; } int n = str.size() / 8; int cate = 0; int j; for (int i = 0; i < n; i = j) { if (v[i] == -1) { cout << "No\n"; return 0; } cate ++; for (j = i + 1; j <= i + v[i]; ++ j) if (v[j] != -1) { cout << "No\n"; return 0; } else ++ cate; } if (cate == n) cout << "Yes\n"; else cout << "No\n"; return 0; }