题目描述
blablabla
样例
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
typedef pair<int,int> PII;
const int N = 1e5 + 10;
int n;
vector<PII> parts;
vector<PII> res;
void merge(){
int st = -1e9,ed = -1e9;
for(auto item : parts){
if(ed < item.first){
if(st != -1e9)
res.push_back({st,ed});
st = item.first;
ed = item.second;
}else{
ed = max(ed,item.second);
}
}
if(st != -1e9) res.push_back({st,ed});
}
int main(){
cin>>n;
while(n--){
int l,r;
cin>>l>>r;
parts.push_back({l,r});
}
sort(parts.begin(),parts.end());
parts.erase(unique(parts.begin(),parts.end()),parts.end());
merge();
cout<<res.size();
return 0;
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla