#ifdef ONLINE_JUDGE #include #else #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #endif using namespace std; // lambda : [] (int a, int b) -> bool { body return } // string r_str = R"(raw string)" #define mp make_pair #define mt make_tuple #define eb emplace_back #define pb push_back #define fi first #define se second #define LL long long #define ULL unsigned long long #define PI (atan(1) * 4) #define BASE 73 #define NMAX 10000 #define NMAX2 20001 #define MOD1 1000000007 #define ALL(V) (V).begin(), (V).end() #define ALLR(V) (V).rbegin(), (V).rend() #define CRLINE Duxar(__LINE__); #define SHOWME(x) cerr << __LINE__ << ": " << #x << " = " << (x) << endl; #define ENTER putchar('\n'); #define step(i) (i & (i - 1)) ^ i int dx4[] = {-1, 0, 1, 0}; int dy4[] = {0, 1, 0, -1}; int dx8[] = {-1, -1, 0, 1, 1, 1, 0, -1}; int dy8[] = {0, 1, 1, 1, 0, -1, -1, -1}; void Duxar(int _this_line) { #ifndef ONLINE_JUDGE printf("\n . . . . . . . . . . . . . Passed line - %d\n", _this_line); #endif } bool AreEqual(double a, double b) { return (fabs(a - b) < 1e-10); } template bool GetNr(T &_value) { T _sign = 1; char ch; _value = 0; while(!isdigit(ch = getchar())) { if (ch == -1) { return false; } ch == '-' ? _sign = -1 : _sign = 1 ; } do { _value = _value * 10 + (ch - '0'); } while(isdigit(ch = getchar())); _value *= _sign; return true; } int N; int main(){ string fileInput = "sum"; #ifdef INFOARENA freopen((fileInput + ".in").c_str(), "r", stdin); freopen((fileInput + ".out").c_str(), "w", stdout); #else #ifndef ONLINE_JUDGE freopen("/Users/duxar/Workplace/Xcode Projects/Selectie/Selectie/input", "r", stdin); // freopen("/Users/duxar/Workplace/Xcode Projects/Selectie/Selectie/result", "w", stdout); #endif #endif int i, j; string word; cin >> N; getchar(); for (i = 0; i < N; ++i) { getline(cin, word); if (regex_match (word, regex("B [0-3]{2,3} [A-Z]{3}") )) { printf("Correct!\n"); continue; } if (regex_match (word, regex("[A-Z]{2} [0-3]{2} [A-Z]{3}") )) { printf("Correct!\n"); continue; } printf("Incorrect!\n"); // if (word.length() > 12) { // printf("Incorrect!\n"); // continue; // } // int cntspaces = 0; // for (j = 0; j < word.length(); ++j) { // if (!(('A' <= word[j] && word[j] <= 'Z') || word[j] == ' ' || (isdigit(word[j])))) { // printf("Incorrect!\n"); // break; // } // // cntspaces += (word[j] == ' '); // } // if (j < word.length()) { // continue; // } // if (cntspaces != 2) { // printf("Incorrect!\n"); // continue; // } // if (word[0] == 'B') { // if (word[1] == ' ') { // if (isdigit(word[2]) && isdigit(word[3])) { // if (isdigit(word[4])) { // if (word[5] == ' ') { // if (isalpha(word[7]) && isalpha(word[8]) && isalpha(word[6])) { // printf("Correct!\n"); // continue; // } // else { // printf("Incorrect!\n"); // continue; // } // } // else { // printf("Incorrect!\n"); // continue; // } // } // else if (word[4] == ' ') { // if (isalpha(word[7]) && isalpha(word[8]) && isalpha(word[5])) { // printf("Correct!\n"); // continue; // } // else { // printf("Incorrect!\n"); // continue; // } // } // else { // printf("Incorrect!\n"); // continue; // } // } // else { // printf("Incorrect!\n"); // continue; // } // } // else if (isalpha(word[1])) { // if (word[2] == ' ' && isdigit(word[3]) && isdigit(word[4]) && word[5] == ' ' && isalpha(word[7]) && isalpha(word[8]) && isalpha(word[6])) { // printf("Correct!\n"); // continue; // } // else { // printf("Incorrect!\n"); // continue; // } // } // else { // printf("Incorrect!\n"); // continue; // } // } // else { // if (isalpha(word[0]) && isalpha(word[1]) && word[2] == ' ' && isdigit(word[3]) && isdigit(word[4]) && word[5] == ' ' && isalpha(word[7]) && isalpha(word[8]) && isalpha(word[6])) { // printf("Correct!\n"); // continue; // } // else { // printf("Incorrect!\n"); // continue; // } // } } return 0; }