5004 2023. 04. 08 23:57:23 TomaSajt Síkság (55) cpp17 Elfogadva 55/55 35ms 3992 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
  int n;
  cin >> n;
  int prev, other = -1;
  cin >> prev;
  int start = 1;
  int consecutive_start = 1;
  int best_start = 1;
  int best_end = 1;
  for (int i = 2; i <= n; i++) {
    int curr;
    cin >> curr;
    if (curr == prev) {
    } else if (curr == other) {
      consecutive_start = i;
      swap(prev, other);
    } else if ((other == -1 && abs(curr - prev) == 1) ||
               (other != -1 && curr - prev == prev - other)) {
      start = consecutive_start;
      consecutive_start = i;
      other = prev;
      prev = curr;
    } else {
      start = i;
      consecutive_start = i;
      other = -1;
      prev = curr;
    }
    if (best_end - best_start < i - start) {
      best_end = i;
      best_start = start;
    }
  }
  cout << best_end - best_start + 1 << ' ' << best_start;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 55/55
1 Elfogadva 0/0 3ms 1876 KiB
2 Elfogadva 0/0 4ms 2068 KiB
3 Elfogadva 2/2 3ms 2280 KiB
4 Elfogadva 2/2 3ms 2492 KiB
5 Elfogadva 2/2 3ms 2704 KiB
6 Elfogadva 2/2 3ms 2916 KiB
7 Elfogadva 3/3 3ms 3004 KiB
8 Elfogadva 2/2 3ms 3140 KiB
9 Elfogadva 3/3 3ms 3340 KiB
10 Elfogadva 3/3 6ms 3548 KiB
11 Elfogadva 3/3 4ms 3560 KiB
12 Elfogadva 3/3 4ms 3564 KiB
13 Elfogadva 3/3 32ms 3560 KiB
14 Elfogadva 3/3 18ms 3528 KiB
15 Elfogadva 3/3 26ms 3528 KiB
16 Elfogadva 3/3 32ms 3524 KiB
17 Elfogadva 3/3 35ms 3520 KiB
18 Elfogadva 3/3 35ms 3532 KiB
19 Elfogadva 3/3 35ms 3660 KiB
20 Elfogadva 3/3 34ms 3740 KiB
21 Elfogadva 3/3 18ms 3992 KiB
22 Elfogadva 3/3 28ms 3956 KiB