8911 2024. 02. 04 13:48:34 adam Síkság (55) cpp17 Hibás válasz 0/55 300ms 4292 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    int length = 0;
    cin >> length;
    vector<int> terrain(length, 0);
    for (int i = 0; i < length; i++) {
        if (i == 1000) {
            cout << "kys";
        }
        cin >> terrain[i];
    }
    int current_longest_length = 0;
    int current_longest_index = 0;
    int plain_length = 0;
    pair<int, int> possible(-1, -1);
    int first_other_index = 0; // this stores
    for (int i = 0; i < length; i++) {
        if (plain_length == 0) {
            plain_length++;
            possible.first = terrain[i];
            continue;
        } else if (possible.second == -1 && terrain[i] != possible.first && abs(terrain[i] - possible.first) <= 1) {
            first_other_index = i;
            possible.second = terrain[i];
            plain_length++;
            continue;
        } else if (terrain[i] == possible.first || terrain[i] == possible.second) {
            plain_length++;
            continue;
        } else {
            if (current_longest_length < plain_length) {
                current_longest_length = plain_length;
                current_longest_index = i - plain_length;
            }
            possible = pair(-1, -1);
            if (plain_length > 1) {
                i = first_other_index-1;
            }
            plain_length = 0;
        }
        cout << i << endl;
    }
    cout << current_longest_length << " " << current_longest_index + 1 << endl;

    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 0/55
1 Hibás válasz 0/0 3ms 1816 KiB
2 Időlimit túllépés 0/0 300ms 1400 KiB
3 Hibás válasz 0/2 3ms 2440 KiB
4 Hibás válasz 0/2 3ms 2480 KiB
5 Hibás válasz 0/2 3ms 2696 KiB
6 Időlimit túllépés 0/2 300ms 2824 KiB
7 Hibás válasz 0/3 3ms 3064 KiB
8 Időlimit túllépés 0/2 298ms 3260 KiB
9 Időlimit túllépés 0/3 268ms 2624 KiB
10 Időlimit túllépés 0/3 264ms 3524 KiB
11 Időlimit túllépés 0/3 252ms 3580 KiB
12 Hibás válasz 0/3 4ms 3644 KiB
13 Időlimit túllépés 0/3 300ms 3440 KiB
14 Hibás válasz 0/3 20ms 4292 KiB
15 Időlimit túllépés 0/3 300ms 3192 KiB
16 Időlimit túllépés 0/3 261ms 3196 KiB
17 Időlimit túllépés 0/3 261ms 3372 KiB
18 Időlimit túllépés 0/3 273ms 3596 KiB
19 Időlimit túllépés 0/3 268ms 3568 KiB
20 Időlimit túllépés 0/3 268ms 3676 KiB
21 Időlimit túllépés 0/3 229ms 3380 KiB
22 Időlimit túllépés 0/3 245ms 3528 KiB