#include #include #include using namespace std; bool checkTpow(char x[]) { char aux1[4] = { x[0], x[1], x[3], x[4] }; string aux(aux1); int nr; istringstream(aux) >> nr; if (nr == 1 || nr == 2 || nr == 4 || nr == 8 || nr == 16 || nr == 32 || nr == 64 || nr == 128 || nr == 256 || nr == 512 || nr == 1024 || nr == 2048) return true; else return false; } int main() { int n; cin >> n; for (int i = 0; i < n; i++) { char* a = new char[5]; for (int j = 0; j < 5; j++) { cin >> a[j]; } if (a[0] > '2') { cout << "NO\n"; } else if ((a[0] == '2' && a[1] > '3')) { cout << "NO\n"; } else if (a[3] > '5') { cout << "NO\n"; } else if ((a[1] - a[0] == 1) && (a[3] - a[1] == 1) && (a[4] - a[3] == 1)) { cout << "YES\n"; } else if (a[3] == '0' && a[4] == '0') { cout << "YES\n"; } else if (a[0] == a[3] && a[1] == a[4]) { cout << "YES\n"; } else if (a[0] == a[4] && a[1] == a[3]) { cout << "YES\n"; } else if (a[0] != '0' && checkTpow(a) == true) { cout << "YES\n"; } else cout << "NO\n"; delete[] a; } return 0; }