#include using namespace std; using LL = long long; const int mxn = 2e5 + 10; int n; struct node { int R, r; } a[mxn]; int main() { ios::sync_with_stdio(false); cin >> n; for (int i = 1; i <= n; ++i) cin >> a[i].r >> a[i].R; sort(a + 1, a + n + 1, [&](const node &lhs, const node &rhs) { return lhs.R == rhs.R ? lhs.r > rhs.r : lhs.R > rhs.R; }); int lstr = a[1].r, ans = 0; for (int i = 2; i <= n; ++i) { if (a[i].R > lstr) { ++ans; lstr = max(lstr, a[i].r); } else { lstr = a[i].r; } } cout << ans << "\n"; return 0; }