Submission #985847

#TimeUsernameProblemLanguageResultExecution timeMemory
985847irmuunMoney (IZhO17_money)C++17
100 / 100
791 ms58216 KiB
#include<bits/stdc++.h>

using namespace std;

#define ll long long
#define pb push_back
#define ff first
#define ss second
#define all(s) s.begin(),s.end()
#define rall(s) s.rbegin(),s.rend()

int main(){
    ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    int n;
    cin>>n;
    int a[n+5];
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    int l=1;
    multiset<int>v;
    v.insert(0);
    v.insert((int)1e9);
    int ans=1;
    for(int i=2;i<=n;i++){
        if(a[i-1]>a[i]){
            for(int j=l;j<i;j++){
                v.insert(a[j]);
            }
            ans++;
            l=i;
        }
        else{
            int x=*v.upper_bound(a[l]);
            if(a[i]>x){
                for(int j=l;j<i;j++){
                    v.insert(a[j]);
                }
                ans++;
                l=i;
            }
        }
    }
    cout<<ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...