- #include <iostream>
- #include <algorithm>
- #include <vector>
- using namespace std;
- typedef pair<int,int>PII;
- const int N=100010;
- int n;
- vector<PII>segs;
- void merge(vector<PII>&segs){
- vector<PII>res;
- sort(segs.begin(),segs.end());
- int st=-2e9,ed=-2e9;
- for(auto item:segs){
- if(ed<item.first){
- if(st!=-2e9)res.push_back({st,ed});
- st=item.first,ed=item.second;
- }
- else ed=max(ed,item.second);
- }
- if(st!=-2e9)res.push_back({st,ed});
- segs=res;
- }
- int main()
- {
- cin>>n;
- for(int i=0;i<n;i++){
- int x,y;
- cin>>x>>y;
- segs.push_back({x,y});
- }
-
- merge(segs);
- cout<<segs.size()<<endl;
- return 0;
- }
posted @
2023-01-13 14:42
SaulGoodman1
阅读(
13)
评论()
收藏
举报