难度:简单。
标签:数组,哈希表,前缀。
正确解法:
class Solution {
static bool cmp(vector<int>& a, vector<int>& b){
if(a[0] == b[0])return a[1] < b[1];
return a[0] < b[0];
}
public:
bool isCovered(vector<vector<int>>& ranges, int left, int right) {
sort(ranges.begin(), ranges.end(), cmp);
for(int i = 0; i < ranges.size(); ++i){
if(left > right)break;
if(ranges[i][0] <= left && ranges[i][1] >= left)left = ranges[i][1] + 1;
else if(ranges[i][1] < left)continue;
else return false;
}
return left > right;
}
};
结果: