Submission #759692

#TimeUsernameProblemLanguageResultExecution timeMemory
759692NK_Money (IZhO17_money)C++17
100 / 100
820 ms57916 KiB
// Success consists of going from failure to failure without loss of enthusiasm
#include <bits/stdc++.h>

using namespace std;

#define nl '\n'
#define pb push_back
#define sz(x) int(x.size())

const int INF = 1e9+10;

int main() {
	cin.tie(0)->sync_with_stdio(0);
	
	int N; cin >> N;
	vector<int> A(N); for(auto& x : A) cin >> x;

	set<int> S = {INF};

	int ans = 0;
	for(int i = 0; i < N; i++) {
		int mx = *S.upper_bound(A[i]); S.insert(A[i]);
		while(i+1 < N && A[i] <= A[i+1] && A[i+1] <= mx) i++, S.insert(A[i]);
		ans++;
	}
	cout << ans << nl;


}


#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...