AcWing 803. 区间合并
2021-06-03 23:06
标签:表示 clu 区间合并 最小值 count www. href ast 模版 网址 https://www.acwing.com/solution/AcWing/content/1590/ 题目描述 合并所有有交集的区间。 输出合并完成后的区间个数。 例如:[1,3]和[2,6]可以合并为一个区间[1,6]。 输入格式 接下来n行,每行包含两个整数 l 和 r。 输出格式 样例 算法1 但是代码可以归为两种情况判断 int s1 = vp[i].first; int s2 = vp[j].first; merges = min(s1,s2); vp[j].first = merges; AcWing 803. 区间合并 标签:表示 clu 区间合并 最小值 count www. href ast 模版 原文地址:https://www.cnblogs.com/itdef/p/10886615.html
给定n个区间[l, r]。
第一行包含整数n。
共一行,包含一个整数,表示合并区间完成后的区间个数。
输入样例:
5
1 2
2 4
5 6
7 8
7 9
输出样例:
3
(暴力模拟) O(n2)O(n2)
模版题么 简单暴力模拟
抛开输入输出不说
判断 各个区间是否重合
主要是四种情况
1 A区间的起点在B区间的起点终点之间 Bstart Astart Bend Aend
2 A区间起点终点在B区间的起点终点之间 Bstart Astart Aend Bend
反之亦然
3 B区间的起点在A区间的起点终点之间 Astart Bstart Aend Bend
4 B区间起点终点在A区间的起点终点之间 Astart Bstart Bend Aend
int e1 = vp[i].second;
int e2 = vp[j].second;
if( (s1>= s2 && s1=s1 && s2 }
然后进行合并
两者区间合并后就是 起点是两者起点的最小值 终点是两者终点的最大值
代码
mergee = max(e1,e2);
vp[j].second = mergee; 1 #include
文章标题:AcWing 803. 区间合并
文章链接:http://soscw.com/index.php/essay/90163.html