解法:
#include<stdio.h>
#include<stdlib.h>
#define MAXN 100
struct node
{
int start;
int end;
}record[MAXN];
int cmp(const void*a,const void*b)
{
struct node*x=(struct node *)a;
struct node*y=(struct node *)b;
return x->end-y->end;
}
int main(void)
{
int n,count,lastend,i;
while(scanf("%d",&n)!=EOF)
{
if(n==0)
break;
for(i=0;i<n;i++)
scanf("%d%d",&record[i].start,&record[i].end);
qsort(record,n,sizeof(record[0]),cmp);
count=0;
lastend=-1;
for(i=0;i<n;i++)
{
if(record[i].start>=lastend)
{
count++;
lastend=record[i].end;
}
}
printf("%d\n",count);
}
return 0;
}