# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
85534 | farukkastamonuda | Money (IZhO17_money) | C++14 | 3 ms | 688 KiB |
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>
#define fi first
#define se second
#define mp make_pair
#define lo long long
#define inf 1000000000
#define md 1000000007
#define pb push_back
#define li 1000005
using namespace std;
int n,A[li],flag,tut=1,cev=1;
set<int> s;
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&A[i]);
s.insert(inf);
s.insert(A[1]);
for(int i=2;i<=n;i++){
if(A[i]>=A[i-1]){
s.insert(A[i]);
tut=i;
}
else break;
}
int bas=tut+1;
if(bas<=n) cev++;
for(int i=tut+1;i<=n;i++){
//~ printf("I :: %d CEV :: %d\n",i,cev);
if(i==bas || A[i]>=A[i-1]){
int it1=*s.upper_bound(A[bas]);
//int it2=*s.upper_bound(A[bas]);
//~ cout<<"YETETETETETETETETERRRETETE::: :: "<<it1<<" "<<it2<<endl;
if(it1>=A[i]) {s.insert(A[i]);}
else{
//~ cout<<"EASAS :: : : "<<i<<endl;
cev++;
bas=i;
i--;
}
}
else{
bas=i;
cev++;
i--;
}
}
printf("%d\n",cev);
return 0;
}
Compilation message (stderr)
# | 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... |