#include<stdio.h>
struct Game
{
int begin;
int end;
}Game[100001];
int main()
{
int n;
int count=0;
int flag[100001];
scanf("%d\n",&n);
for(int i=0;i<n;i++)
{
scanf("%d %d",&Game[i].begin,&Game[i].end);
}
for(int i=0;i<100001;i++)
{
flag[i]=1;
}
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(Game[j].end<Game[i].end)
{
int temp1=Game[j].end;
Game[j].end=Game[i].end;
Game[i].end=temp1;
int temp2=Game[j].begin;
Game[j].begin=Game[i].begin;
Game[i].begin=temp2;
}
}
}
for(int i=0;i<n;i++)
{
if(flag[Game[i].begin]!=0)
{
for(int j=Game[i].begin;j<Game[i].end;j++)
{
flag[j]=0;
}
count++;
}
else continue;
}
printf("%d",count);
return 0;
}