#include <vector>
#include <utility>
#include <iostream>
#include <algorithm>
int main() {
int n; std::cin >> n;
std::vector<std::pair<int, int>> a(n);
for (auto &[r, l] : a) std::cin >> l >> r;
std::sort(a.begin(), a.end());
int ans = 0, end = 0;
for (auto &[r, l] : a)
if (l >= end) ++ans, end = r;
std::cout << ans << std::endl;
return 0;
}
为什么要 l>=end 而不能 l>end?