#include <vector>
#include <algorithm>
#include <iostream>
#include <utility>

using namespace std;

vector<pair<int, int>> v{ { 1, 3 }, { 2, 5 }, { 6, 9 } };

int solve(){
	vector<pair<int, int>> results;

	for (auto& vIndex : v){
		auto resultIndex = find_if(results.begin(), results.end(), [vIndex](const pair<int, int>& i){return vIndex.first >= i.first && vIndex.first <= i.second || vIndex.second >= i.first && vIndex.second <= i.second; });

		if (resultIndex == results.end()){
			results.push_back(vIndex);
		}else{
			resultIndex->first = min(vIndex.first, resultIndex->first);
			resultIndex->second = max(vIndex.second, resultIndex->second);
		}
	}
	return results.size();
}

int main(){
	cout << solve() << endl;

	return 0;
}