This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#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 int inf=1e9+10;
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;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |