#include <iostream>
#include <algorithm>
using namespace std;
struct p
{
int endd,start;
};
p p1[1000];
bool cmp(p p1,p p2)
{
return p1.endd<p2.endd;
}
int main()
{
int i,m,k,t;
while(cin>>t&&t)
{
for(i=0;i<t;i++)
cin>>p1[i].start>>p1[i].endd;
sort(p1,p1+t,cmp);
k=0; m=0;
for(i=0;i<t;i++)
if(p1[i].start>=m)
{
m=p1[i].endd; k++;
}
cout<<k<<endl;
}
return 0;
}
//题目是杭电上的,题号忘了,题名是“今年暑假不AC”,大致意思是给一个时间表,给出最优安排,想想就怀念啊。。。。很简单的一道贪心问题,先给start排序,在每次用endd和下一个start比较的时候,存放最优解。。。。