#include<stdio.h>
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
struct num
{
int a;
int b;
};
void paixu(struct num pro[], int m)
{
for(int i=0;i<m;i++)
{
for(int j=i+1;j<m;j++)
{
if(pro[j].b<pro[i].b)
{
swap(pro[j].b,pro[i].b);
swap(pro[j].a,pro[i].a);
}
}
}
}
int main()
{
int n;
while(~scanf("%d",&n))
{
if(n==0)
return 0;
struct num pro[100];
for(int i=0;i<n;i++)
{
scanf("%d%d",&pro[i].a,&pro[i].b);
}
// printf("\n");
// for(int i=0;i<n;i++)
// {
// printf("%d %d\n",pro[i].a,pro[i].b);
// }
paixu(pro,n);
int ch=0,t=0;
for(int i=0;i<n;i++)
{
if(pro[i].a>=t)
{
ch++;
t=pro[i].b;
}
}
printf("%d\n",ch);
}
}
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
struct num
{
int a;
int b;
};
void paixu(struct num pro[], int m)
{
for(int i=0;i<m;i++)
{
for(int j=i+1;j<m;j++)
{
if(pro[j].b<pro[i].b)
{
swap(pro[j].b,pro[i].b);
swap(pro[j].a,pro[i].a);
}
}
}
}
int main()
{
int n;
while(~scanf("%d",&n))
{
if(n==0)
return 0;
struct num pro[100];
for(int i=0;i<n;i++)
{
scanf("%d%d",&pro[i].a,&pro[i].b);
}
// printf("\n");
// for(int i=0;i<n;i++)
// {
// printf("%d %d\n",pro[i].a,pro[i].b);
// }
paixu(pro,n);
int ch=0,t=0;
for(int i=0;i<n;i++)
{
if(pro[i].a>=t)
{
ch++;
t=pro[i].b;
}
}
printf("%d\n",ch);
}
}