leetcode-1893. 检查是否区域内所有整数都被覆盖

2021-07-23 15:35 评论 0 条 终极小编

给你一个二维整数数组 ranges 和两个整数 left 和 right 。每个 ranges[i] = [starti, endi] 表示一个从 starti 到 endi 的 闭区间 。

如果闭区间 [left, right] 内每个整数都被 ranges 中 至少一个 区间覆盖,那么请你返回 true ,否则返回 false 。

已知区间 ranges[i] = [starti, endi] ,如果整数 x 满足 starti <= x <= endi ,那么我们称整数x 被覆盖了。


示例 1:

输入:ranges = [[1,2],[3,4],[5,6]], left = 2, right = 5

输出:true

解释:2 到 5 的每个整数都被覆盖了:

- 2 被第一个区间覆盖。

- 3 和 4 被第二个区间覆盖。

- 5 被第三个区间覆盖。


示例 2:

输入:ranges = [[1,10],[10,20]], left = 21, right = 21

输出:false

解释:21 没有被任何一个区间覆盖。

 

提示:

1 <= ranges.length <= 50

1 <= starti <= endi <= 50

1 <= left <= right <= 50

来源:力扣(LeetCode)


func IsCovered(ranges [][]int, left int, right int) bool {

    found := false
    for i := left; i <= right; i++ {
        for _, v := range ranges {
            if i >= v[0] && i <= v[1] {
                found = true
                break
            }
        }
        if !found {
            return false
        }
        found = false
    }
    return true
}

执行结果:

执行用时:0 ms, 在所有 Go 提交中击败了100.00%的用户
内存消耗:2.5 MB, 在所有 Go 提交中击败了54.39%的用户
版权声明:本文著作权归原作者所有,如有侵权,请联系我们立即删除!
来源:手动创建 分类:Golang 标签: