31472023-02-20 12:25:06TuruTamasBlokk eliminációcpp11Time limit exceeded 10/50400ms4804 KiB
#include <bits/stdc++.h>
using namespace std;
bool good = false;
vector<bool> blokkok;
bool stop = false;

void checkIfGood(int loc) {
    if (loc == blokkok.size()) {
        good = true;
        stop = true;
        return;
    }
    if (loc > blokkok.size()) return;
    for (size_t i = loc; i <= loc+(blokkok.size()-loc)/2; i++)
    {
        if (blokkok.at(i)) checkIfGood(i + i-loc + 1);
        if (stop) return;
    }
}

int main() {
    int T;
    cin >> T;
    string line;
    for (int i = 0; i < T; ++i) {
        blokkok.clear();
        cin >> line;
        for (int i = 0; i < line.size(); ++i) {
            if (line[i] == line[i+1]) {
                blokkok.push_back(true);
                char start = line[i];
                for (; line[i] == start && i < line.size(); i++){}
                i--;
            }
            else {
                blokkok.push_back(false);
            }
        }
        checkIfGood((0));
        if (good) {
            cout << "IGEN\n";
        }
        else {
            cout << "NEM\n";
        }
        good = false;
        stop = false;
    }
}
SubtaskSumTestVerdictTimeMemory
base10/50
1Accepted0/03ms1960 KiB
2Time limit exceeded0/0400ms1884 KiB
3Accepted2/23ms2324 KiB
4Accepted2/23ms2564 KiB
5Accepted2/23ms2776 KiB
6Wrong answer0/23ms2988 KiB
7Accepted2/23ms3072 KiB
8Wrong answer0/23ms3076 KiB
9Wrong answer0/2298ms3076 KiB
10Accepted2/226ms3200 KiB
11Time limit exceeded0/2370ms3300 KiB
12Time limit exceeded0/2367ms3536 KiB
13Time limit exceeded0/2358ms3628 KiB
14Time limit exceeded0/2363ms3688 KiB
15Time limit exceeded0/3316ms4008 KiB
16Time limit exceeded0/3370ms3952 KiB
17Time limit exceeded0/3365ms3412 KiB
18Time limit exceeded0/3365ms4480 KiB
19Time limit exceeded0/3375ms3812 KiB
20Time limit exceeded0/3368ms4804 KiB
21Time limit exceeded0/4363ms4304 KiB
22Time limit exceeded0/4372ms3980 KiB