题意:给出N个闭区间(x,y),求最少需要确定几个点才能使每个闭区间中都至少存在一个点。
(待)
#include <bits/stdc++.h>
using namespace std;
struct qujian{
int x,y;
}I[110];
bool cmp(qujian a,qujian b){ //qujian是变量名!sort的地方再写错hu脸!!
if(a.x!=b.x)
return a.x>b.x;
else
return a.y<b.y;
}
int main(){
int n;
cin>>n;
for (int i=0;i<n;i++)
scanf("%d%d",&I[i].x,&I[i].y);
sort(I,I+n,cmp); //I[0]在最左边
int ans=1,lastX=I[0].x;
for (int i=1;i<n;i++){
if(I[i].y<lastX){ //唯一区别:小于等于换成小于
lastX=I[i].x;
ans++;
}
}
printf("%d\n",ans);
return 0;
}