算法导论16.1
#include<cstdio>
#include<algorithm>
using namespace std;
struct node
{
int s,e;
};
bool cmp(node a,node b)
{
return a.e<b.e;
}
int main()
{
int n,i;
node q[1000];
int ans;
int flage;
while(~scanf("%d",&n)&&n)
{
for(i=1;i<=n;i++)
scanf("%d%d",&q[i].s,&q[i].e);
sort(q+1,q+n+1,cmp);
flage=q[1].e;
ans=1;
for(i=2;i<=n;i++)
{
if(q[i].s>=flage)
{
ans++;
flage=q[i].e;
}
}
printf("%d\n",ans);
}
return 0;
}