Submission #1353361

#TimeUsernameProblemLanguageResultExecution timeMemory
1353361nini_gvenetadzeGlobal Warming (NOI13_gw)C++20
0 / 40
267 ms32556 KiB
#include<bits/stdc++.h>
using namespace std;

int main()
{
    long long int n;
    long long int ans=0;
    long long int k=LLONG_MIN, m=LLONG_MIN;
    cin>>n;
    vector<long long int> h(n+1);
    vector<long long int> a(n+1, 0);
        for(long long int i=1; i<=n; i++)
    {
        cin>>h[i];
        m=max(m, h[i]);
        
    }
    vector<pair<long long int, long long int>> pp;
    for(long long int i=1; i<=n; i++)
    {
        pp.push_back({h[i], i});
    }
    m--;
    sort(pp.begin(), pp.end());
    reverse(pp.begin(), pp.end());
    for(long long int i=1; i<=n; i++)
    {
     
       
       
            a[pp[i].second]=1;
            if(i==1)
            {
               if(a[i+1]==1) {ans--;} 
               if(a[i+1]==0) {ans++;}
            }
            else
              if(i==n)
            {
               if(a[i-1]==1) {ans--;} 
               if(a[i-1]==0) {ans++;}
            }
            else
            if(i!=1 && i!=n){
            if(a[i+1]==1 && a[i-1]==1) {ans--;}
            if(a[i+1]==0 && a[i-1]==0) {ans++;}}
            k=max(k, ans);
            
          
        
          
      
          
    }
      cout<<k<<" ";
}
#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...