8912 2024. 02. 04 13:49:40 adam Síkság (55) cpp17 Időlimit túllépés 10/55 300ms 3528 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++) {

        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 << current_longest_length << " " << current_longest_index + 1 << endl;

    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 10/55
1 Elfogadva 0/0 3ms 1812 KiB
2 Időlimit túllépés 0/0 282ms 2060 KiB
3 Hibás válasz 0/2 3ms 2244 KiB
4 Elfogadva 2/2 3ms 2292 KiB
5 Elfogadva 2/2 3ms 2544 KiB
6 Időlimit túllépés 0/2 300ms 2604 KiB
7 Elfogadva 3/3 3ms 2700 KiB
8 Időlimit túllépés 0/2 300ms 2588 KiB
9 Időlimit túllépés 0/3 261ms 2588 KiB
10 Időlimit túllépés 0/3 275ms 2896 KiB
11 Időlimit túllépés 0/3 252ms 2740 KiB
12 Hibás válasz 0/3 4ms 2660 KiB
13 Időlimit túllépés 0/3 300ms 2516 KiB
14 Elfogadva 3/3 20ms 3528 KiB
15 Időlimit túllépés 0/3 257ms 2348 KiB
16 Időlimit túllépés 0/3 280ms 2300 KiB
17 Időlimit túllépés 0/3 264ms 2600 KiB
18 Időlimit túllépés 0/3 252ms 2688 KiB
19 Időlimit túllépés 0/3 273ms 2652 KiB
20 Időlimit túllépés 0/3 266ms 2948 KiB
21 Időlimit túllépés 0/3 264ms 2632 KiB
22 Időlimit túllépés 0/3 233ms 3132 KiB