51nod 1133【贪心】
思路:
按照终点升序,然后遍历一下就好了;
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=1e5+10;
struct asd{
int x,y;
};
asd q[N];
bool cmp(asd a,asd b)
{
if(a.y<b.y)
return 1;
if(a.y==b.y)
return a.x>b.x;
return 0;
}
int main()
{
int n;
int ans;
int s,t;
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%d%d",&q[i].x,&q[i].y);
sort(q,q+n,cmp);
ans=1;
t=q[0].y;
for(int i=1;i<n;i++)
{
if(q[i].x>=t)
{
t=q[i].y;
ans++;
}
}
printf("%d\n",ans);
return 0;
}