题目描述:
示例 1:
- 2 被第一个区间覆盖。
- 3 和 4 被第二个区间覆盖。
- 5 被第三个区间覆盖。
示例 2:
思路一:
代码实现:
class Solution {
public boolean isCovered(int[][] ranges, int left, int right) {
for (int i = left; i <= right; i++) {
boolean flag = false;
for (int j = 0; j < ranges.length; j++) {
if (ranges[j][0] <= i && ranges[j][1] >= i) {
flag = true;
break;
}
}
if (!flag) {
return false;
}
}
return true;
}
}
思路二:
代码实现:
class Solution {
public boolean isCovered(int[][] ranges, int left, int right) {
Map<Integer, Integer> map = new HashMap();
for (int i = 0; i < ranges.length; i++) {
int start = ranges[i][0];
int end = ranges[i][1];
for (int p = start; p <= end; p++) {
map.put(p, 1);
}
}
for (int j = left; j <= right; j++) {
if (map.get(j) == null) {
return false;
}
}
return true;
}
}