Submission #540985

#TimeUsernameProblemLanguageResultExecution timeMemory
540985creepedMoney (IZhO17_money)C++14
0 / 100
0 ms212 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;

}

Compilation message (stderr)

money.cpp: In function 'int main()':
money.cpp:10:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   10 |     freopen("money.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
money.cpp:11:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 |     freopen("money.out", "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...