89122024-02-04 13:49:40adamSíkság (55)cpp17Időlimit túllépés 10/55300ms3528 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ÖsszpontTesztVerdiktIdőMemória
base10/55
1Elfogadva0/03ms1812 KiB
2Időlimit túllépés0/0282ms2060 KiB
3Hibás válasz0/23ms2244 KiB
4Elfogadva2/23ms2292 KiB
5Elfogadva2/23ms2544 KiB
6Időlimit túllépés0/2300ms2604 KiB
7Elfogadva3/33ms2700 KiB
8Időlimit túllépés0/2300ms2588 KiB
9Időlimit túllépés0/3261ms2588 KiB
10Időlimit túllépés0/3275ms2896 KiB
11Időlimit túllépés0/3252ms2740 KiB
12Hibás válasz0/34ms2660 KiB
13Időlimit túllépés0/3300ms2516 KiB
14Elfogadva3/320ms3528 KiB
15Időlimit túllépés0/3257ms2348 KiB
16Időlimit túllépés0/3280ms2300 KiB
17Időlimit túllépés0/3264ms2600 KiB
18Időlimit túllépés0/3252ms2688 KiB
19Időlimit túllépés0/3273ms2652 KiB
20Időlimit túllépés0/3266ms2948 KiB
21Időlimit túllépés0/3264ms2632 KiB
22Időlimit túllépés0/3233ms3132 KiB