#include<cstdio>#include<algorithm>#include<vector>using namespace std; typedef struct{ int s; int f;}W;bool cmp(W a,W b){ if(a.f!=b.f)return a.f<b.f; else return a.s<b.s;}int main(){ W t; int n,i,c,j; vector<W> v; while(scanf("%d",&n)!=EOF &&n ) { for(i=0;i<n;++i) { scanf("%d%d",&t.s,&t.f); v.push_back(t); } sort(v.begin(),v.end(),cmp); for( c=1,i=1,j=v[0].f; i<n; ++i ) if(j<=v[i].s){ ++c; j=v[i].f; } printf("%d\n",c); v.clear(); } return 0;}/************************************************************** Problem: 1463 User: 3011216016 Language: C++ Result: Accepted Time:10 ms Memory:1024 kb****************************************************************/