#include <bits/stdc++.h>
using namespace std;
int gw(int N, int *H) {
vector<pair<int, int>> v;
vector<int> ativo(N+2, 0);
for(int i=0;i<N;i++) {
v.push_back({H[i], i+1});
}
int cur=0, ans=0;
sort(v.rbegin(), v.rend());
int last=2e9;
for(auto pr : v) {
int curv=pr.first, i=pr.second;
if(curv!=last) {
last=curv;
ans=max(ans, cur);
}
if(!ativo[i-1]&&!ativo[i+1]) cur++;
else if(ativo[i-1]&&ativo[i+1]) cur--;
ativo[i]=1;
}
ans=max(ans, cur);
return ans;
}
int h[1<<20];
int main() {
cin.tie(nullptr);
ios::sync_with_stdio(false);
int n;
cin >> n;
for(int i=0;i<n;i++) cin >> h[i];
cout << gw(n, h) << endl;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |