제출 #1346863

#제출 시각아이디문제언어결과실행 시간메모리
1346863jenterjongle45지구 온난화 (NOI13_gw)C++20
19 / 40
367 ms66768 KiB
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<int,int>;
int main(){
    cin.tie(0)->sync_with_stdio(0);
    int n,now=0,mx=0;cin>>n;
    vector<int> a(n),cmp,ch(n);
    vector<vector<int>> idx(n+1);
    for(int &x:a) cin>>x;
    //compression
    cmp=a;
    sort(cmp.begin(),cmp.end());
    cmp.resize(unique(cmp.begin(),cmp.end())-cmp.begin());
    for(int i=0;i<n;i++){
        a[i]=upper_bound(cmp.begin(),cmp.end(),a[i])-cmp.begin();
        idx[a[i]].push_back(i);
    }
    for(int i=n-1;i>=0;i--){
        for(int x:idx[i+1]){
            ch[x]=1;
            if((x==0||ch[x-1]==0)&&(x==n-1||ch[x+1]==0)) now++;
            else if((x!=0&&ch[x-1]==1)&&(x!=n-1&&ch[x+1]==1)) now--;
        }
        mx=max(mx,now);
    }
    cout<<mx;
    


}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...