Submission #501906

#TimeUsernameProblemLanguageResultExecution timeMemory
501906SirCovidThe19thMoney (IZhO17_money)C++17
0 / 100
0 ms204 KiB
#include <bits/stdc++.h>
using namespace std; 

int main(){
    int n; cin >> n; int A[n], ans = 1; multiset<int> S;
    for (int i = 0; i < n; i++) cin >> A[i], S.insert(A[i]);

    S.erase(S.find(A[n - 1]));
    for (int i = n - 1; i; i--){ //should we include i and i - 1?
        S.erase(S.find(A[i - 1]));
        auto it = S.upper_bound(A[i - 1]);
        if (A[i - 1] > A[i] or (it != S.end() and *it <= A[i])){
            ans++;
        }
    }
    cout<<ans<<endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...