#include <bits/stdc++.h>
using namespace std;
const int MAX = 10000010;
const double EPS = 1e-10;
const double PI = 2 * asin(1.0);
const long long mod = 1e9 + 7;
inline int cmp(double x, double y = 0, double tol = EPS) {
  return (x <= y + tol) ? (x + tol < y) ? -1 : 0 : 1;
}
struct dados {
  int inicio, fim;
};
bool operator<(dados a, dados b) {
  if (a.inicio == b.inicio) return a.fim > b.fim;
  return a.inicio < b.inicio;
}
int main() {
  int n;
  scanf("%d", &n);
  vector<dados> pontos;
  for (int i = 0; i < n; ++i) {
    dados aux;
    scanf("%d%d", &aux.inicio, &aux.fim);
    pontos.push_back(aux);
  }
  sort(pontos.begin(), pontos.end());
  int maior = pontos[0].fim;
  int cont = 0;
  for (int i = 1; i < n; ++i) {
    if (pontos[i].fim <= maior)
      cont++;
    else
      maior = pontos[i].fim;
  }
  printf("%d\n", cont);
}
