Submission #1356745

#TimeUsernameProblemLanguageResultExecution timeMemory
1356745Zone_zoneeGlobal Warming (NOI13_gw)C++20
40 / 40
221 ms12268 KiB
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6+10;

int a[N];
int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin >> n;
    priority_queue<pair<int, int>> pq;
    for(int i = 1; i <= n; ++i){
        cin >> a[i];
        pq.push({a[i], i});
    }
    int ans = 0;
    int cnt = 0;
    while(!pq.empty()){
        auto [cur, idx] = pq.top();
        vector<int> v;
        while(!pq.empty() && pq.top().first == cur){
            v.push_back(pq.top().second);
            pq.pop();
        }
        for(int x : v){
            cnt++;
            if(a[x-1] >= cur) cnt--;
            if(a[x+1] > cur) cnt--;
        }
        ans = max(ans, cnt);
    }
    cout << ans << '\n';
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...