1 solutions
-
0
#include<bits/stdc++.h> using namespace std; const int N=1e5+10; struct Node{ //定义一种结构体,按照区间右端点从小到大排序 int l,r; bool operator<(const Node& W) { return r<W.r; } }range[N]; int main() { int n; cin>>n; for(int i=1;i<=n;i++) { cin>>range[i].l>>range[i].r; } sort(range+1,range+1+n); int res=0,ed=-2e9; for(int i=1;i<=n;i++) { if(ed<range[i].l) //当前所选的点没有包含当前区间 { res++;//新选一个点 ed=range[i].r; //更新当前所选的点的坐标 } } cout<<res; return 0; }
Information
- ID
- 246
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 5
- Tags
- # Submissions
- 17
- Accepted
- 6
- Uploaded By