题解 : 这个题目看了一下,大概想了 3 分钟 线段树 结果就 呵呵 了 还怀疑自己连线段树都不会了 …..emmmm 后来才发现 这就不是个线段树的题目 (不过据说姿势水平高的人线段树也能过) 贴一组 hack 线段树的数据
8
13 17
83 89
31 33
7 13
52 52
88 89
29 30
16 22
answer :
6
正解 :这个题的巧妙之处在于它只让你找到一个被覆盖的区间而不是全部,这样的话我们就可以 ,首先我们按照左端点为第一关键字,右端点为第二关键字排序,我们考虑什么情况下一个区间可以被覆盖呢 ? 有两种情况 (仅适用于只让你输出一个被覆盖区间的情况)
假设当前考虑的是第 i 个区间
1. 前一个区间(即第 i - 1 个区间)可以覆盖这个区间
2. 前一个区间 (第 i - 1 个)和后一个区间 (i第 + 1 个)一起覆盖这个区间
多个区间覆盖一个区间的情况可以归结为第一种情况 (继续向后扫描你就会发现这件事),大家可以思考一下。
AC code :
#include <iostream>
#include &l