#include<bits/stdc++.h>
using namespace std;
const int MAXN=1000005;
int read(){
int sgn=0,res=0;
char ch=getchar();
while(ch<'0'||ch>'9'){
if(ch=='-') sgn=1;
ch=getchar();
}
while(ch>='0'&&ch<='9'){
res=(res<<3)+(res<<1)+(ch-'0');
ch=getchar();
}
return (sgn?-res:res);
}
struct node{
int st,en;
}m[MAXN];
bool cmp(node a,node b){
return a.en<b.en;
}
int main(){
int n=read();
for(int i=1;i<=n;i++) m[i].st=read(),m[i].en=read();
sort(m+1,m+n+1,cmp);
int pos=m[1].en,ans=0;
for(int i=2;i<=n;i++){
if(m[i].en>=pos){
ans++;
pos=m[i].en;
}
}
printf("%d",ans);
return 0;
}
QWQ