Submission #710080

#TimeUsernameProblemLanguageResultExecution timeMemory
710080Tyx2019Money (IZhO17_money)C++17
9 / 100
1 ms212 KiB
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
    int N;
    cin >> N;
    int A[N];
    for(int i=0;i<N;i++) cin >> A[i];
    set<int> S;
    queue<int> Q;
    int prev=-1;
    int cnt=1;
    int lessthan=1e8;
    for(int i=0;i<N;i++){
        if(prev==-1){
            prev=A[i];
            auto k=S.upper_bound(A[i]);
            if(k!=S.end()){
                lessthan=*k;
            }
            Q.push(A[i]);
            continue;
        }
        if(A[i]>=A[i-1]&&A[i]<=lessthan){
            Q.push(A[i]);
            continue;
        }
        prev=-1;
        cnt++;
        i--;
        while(!Q.empty()){
            S.insert(Q.front());
            Q.pop();
        }
    }
    cout << cnt;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...