Submission #540986

#TimeUsernameProblemLanguageResultExecution timeMemory
540986creepedMoney (IZhO17_money)C++14
100 / 100
1205 ms61932 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; ll n,a[1000002]; ll cnt; int main() { //freopen("money.in", "r", stdin); //freopen("money.out", "w", stdout); cin>>n; for(ll i=1;i<=n;i++) cin>>a[i]; set<ll> st; st.insert(100000000); int next = 100000000; for(ll i=1;i<=n;i++) { if(i > 1 && a[i] == a[i-1]) continue; auto cur = st.lower_bound(a[i]); if(i == 1 || a[i] < a[i-1] || *cur != next) cnt ++, next = *st.upper_bound(a[i]); st.insert(a[i]); } cout<<cnt<<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...