#1893
Easy Algorithms Check if all the integers in a range are covered
Array Hash Table Prefix Sum
50.8% acceptance
Feb 25, 2026
672
127
Given a 2D integer array ranges and two integers left and right, return true if every integer in [left, right] is covered by at least one range.
Solution
Rust
Time O(n)
Space O(1)
impl Solution {
pub fn is_covered(ranges: Vec<Vec<i32>>, left: i32, right: i32) -> bool {
let mut diff = [0i32; 52];
for r in &ranges {
diff[r[0] as usize] += 1;
diff[r[1] as usize + 1] -= 1;
}
let mut running = 0;
for i in 0..=50usize {
running += diff[i];
if i as i32 >= left && i as i32 <= right && running == 0 {
return false;
}
}
true
}
}