5609 | 2023. 08. 07 14:10:36 | TomaSajt | Völgy (100 pont) | cpp17 | Elfogadva 100/100 | 39ms | 11068 KiB |
#include <bits/stdc++.h>
using namespace std;
int n;
int solve(const vector<int>& heights) {
int best_width = 0;
vector<int> prev(n);
prev[0] = -1;
for (int i = 1; i < n; i++) {
prev[i] = i - 1;
while (prev[i] != -1 && heights[i] > heights[prev[i]]) prev[i] = prev[prev[i]];
if (prev[i] != -1) best_width = max(best_width, i - prev[i]);
}
return best_width;
}
int main() {
cin >> n;
vector<int> heights(n);
for (int& h : heights) cin >> h;
int res1 = solve(heights);
reverse(heights.begin(), heights.end());
int res = max(res1, solve(heights));
if (res < 2) {
cout << -1;
return 0;
}
cout << res;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
base | 100/100 | ||||||
1 | Elfogadva | 0/0 | 3ms | 1812 KiB | |||
2 | Elfogadva | 0/0 | 3ms | 1940 KiB | |||
3 | Elfogadva | 5/5 | 3ms | 2084 KiB | |||
4 | Elfogadva | 5/5 | 3ms | 2332 KiB | |||
5 | Elfogadva | 5/5 | 2ms | 2384 KiB | |||
6 | Elfogadva | 5/5 | 3ms | 2636 KiB | |||
7 | Elfogadva | 5/5 | 2ms | 2756 KiB | |||
8 | Elfogadva | 5/5 | 2ms | 2756 KiB | |||
9 | Elfogadva | 5/5 | 3ms | 2896 KiB | |||
10 | Elfogadva | 5/5 | 3ms | 3112 KiB | |||
11 | Elfogadva | 5/5 | 4ms | 3252 KiB | |||
12 | Elfogadva | 5/5 | 4ms | 3480 KiB | |||
13 | Elfogadva | 5/5 | 6ms | 3688 KiB | |||
14 | Elfogadva | 5/5 | 6ms | 3968 KiB | |||
15 | Elfogadva | 5/5 | 34ms | 5840 KiB | |||
16 | Elfogadva | 5/5 | 37ms | 6568 KiB | |||
17 | Elfogadva | 5/5 | 35ms | 7172 KiB | |||
18 | Elfogadva | 5/5 | 35ms | 7636 KiB | |||
19 | Elfogadva | 5/5 | 35ms | 8456 KiB | |||
20 | Elfogadva | 5/5 | 39ms | 9180 KiB | |||
21 | Elfogadva | 5/5 | 39ms | 10068 KiB | |||
22 | Elfogadva | 5/5 | 39ms | 11068 KiB |