知识点:贪心 + 结构体一级排序
#include <cstdio>
#include <cstdlib>
struct TV
{
int Ti_s;
int Ti_e;
};
inline int cmp(const void *a,const void *b)
{
return ((TV *)a)->Ti_e-((TV *)b)->Ti_e;
}
int main()
{
int n;
while(scanf("%d",&n),n)
{
TV f[n];
for(int i=0;i<n;i++)
scanf("%d%d",&f[i].Ti_s,&f[i].Ti_e);
qsort(f,n,sizeof(TV),cmp);
int cnt=1;
for(int i=0;i<n-1;)
{
int j;
for(j=i+1;j<n;j++)
if(f[j].Ti_s>=f[i].Ti_e)
{
cnt++;
break;
}
i=j;
}
printf("%d\n",cnt);
}
return 0;
}