Submission #467126

#TimeUsernameProblemLanguageResultExecution timeMemory
467126ritul_kr_singhMoney (IZhO17_money)C++17
0 / 100
1 ms204 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define sp << ' ' <<
#define nl << '\n'

const int MAX_N = 1e6+1;

int N, A[MAX_N], ans;
multiset<int> s;

signed main(){
	cin.tie(0)->sync_with_stdio(0);
	
	cin >> N;

	for(int i=0; i<N; ++i) cin >> A[i];

	for(int i=0, j; i<N; i=j){
		j = i + 1;
		s.insert(A[i]);

		while(j < N && A[j-1] <= A[j]){
			auto f = s.upper_bound(A[j-1]);
			if(f == end(s) || A[j] <= *f)
				s.insert(A[j++]);
			else break;
		}

		++ans;
	}

	cout << ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...