#include #include #include #include using namespace std; typedef pair P; const int MAX_N = 200000; int N; P r[MAX_N]; int main() { cin >> N; for (int i = 0; i < N; i++) cin >> r[i].second >> r[i].first; int ans = -1, tmp = 0; sort(r, r + N); queue

que1, que2; for (int i = 0; i < N; i++) que1.push(r[i]); while (!que1.empty()) { P mat = que1.front(); que1.pop(); if (mat.second >= tmp) { tmp = mat.first; } else que2.push(mat); if (que1.empty()) { swap(que1, que2); ans++; tmp = 0; } } cout << ans << endl; return 0; }