#include <bits/stdc++.h>
using namespace std;

int maxSubGroups(vector<int>arr){
	int n=arr.size();
	vector<int>sortedArr = arr;
	sort(sortedArr.begin(), sortedArr.end());
	map<int,int>m;
	for(int i=0;i<sortedArr.size();i++)
		m[sortedArr[i]]=i;
	int maxGroups = 0, maxIndex=0;
	for(int i=0;i<n;i++){
		maxIndex = max(maxIndex, m[arr[i]]);
		if(maxIndex == i)
			maxGroups++;
	}
	return maxGroups;
}

int main() {
	vector<int>arr = {1, 5, 4, 9, 8, 7, 12, 13, 14};
	int maxGroups = maxSubGroups(arr);
	cout<<maxGroups;
	return 0;
}