Submission #1173901

#TimeUsernameProblemLanguageResultExecution timeMemory
1173901ezzzayGlobal Warming (NOI13_gw)C++20
0 / 40
90 ms12360 KiB
#include<bits/stdc++.h>
using namespace std;
#define ff first
#define ss second
#define pb push_back
const int N=1e5+5;
int a[N];
vector<int>v[N];
signed main(){
    int n;
    cin>>n;
    map<int,int>mp;
    
    for(int i=1;i<=n;i++){
        cin>>a[i];
        mp[a[i]];
    }
    int id=1;
    for(auto it=mp.begin();it!=mp.end();it++){
        it->ss= id++;
    }
    set<int>st;
    for(int i=1;i<=n;i++){
        a[i]=mp[a[i]];
        st.insert(a[i]);
    }
    int p=0;
    vector<bool>vis(n+1);
    for(int i=1;i<=n;i++)vis[i]=1;
    int h=1;
    for(auto x:st){
        reverse(v[x].begin(),v[x].end());
        for(auto i:v[x]){
            if(vis[i+1]==1 and vis[i-1]==1){
                h++;
            }
            if(vis[i+1]==0 and vis[i-1]==0)h--;
            vis[i]=0;
        }
        p=max(p,h);
    }
    cout<<p;
}
#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...