structRange{ int l,r; booloperator<(const Range &w){ returnthis->r<w.r; } };
Range range[N];
intmain(){ int n; scanf("%d",&n); for (int i = 1; i <= n; i++) scanf("%d%d",&range[i].l,&range[i].r); sort(range+1,range+n+1); int res=0,end=-2e9; for (int i = 1; i <= n; i++) if (end<range[i].l){ end=range[i].r; ++res; } printf("%d\n",res); return0; }