Submission #534687

#TimeUsernameProblemLanguageResultExecution timeMemory
534687fadi57Money (IZhO17_money)C++14
9 / 100
1 ms324 KiB
#include<bits/stdc++.h>
using namespace std;
const int mx=2e6+900;
const int mx2=1e6+9;
typedef long long ll;
const int mod=998244353 ;
const int SQ=400;
const long long inf=1e18+10;
  int a[mx+1];

int main(){

   ios_base::sync_with_stdio(0);
    cin.tie(0);
     int n;cin>>n;int ans=1; int a[n];
     int i=0;
     for( i=0;i<n;i++){
        cin>>a[i];
     }
     set<int>s;
     i=0;
     s.insert(a[0]);
     i++;
     while(a[i]>=a[i-1]){
        s.insert(a[i]);
        i++;
     }
     int x=*(s.upper_bound(a[i]));
     for(;i<n;i++){
        if(a[i]>=a[i-1]&&a[i]<=x){
            s.insert(a[i]);
        }else{
          ans++;
          if(*(s.rbegin())<=a[i]){
          x=inf;
          }else{
            x=*(s.upper_bound(a[i]));
          }
                    s.insert(a[i]);
        }
     }
     cout<<ans;


    }








Compilation message (stderr)

money.cpp: In function 'int main()':
money.cpp:35:13: warning: overflow in conversion from 'long long int' to 'int' changes value from '1000000000000000000' to '-1486618624' [-Woverflow]
   35 |           x=inf;
      |             ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...