LeetCode 1893. 检查是否区域内所有整数都被覆盖(差分)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 1893. 检查是否区域内所有整数都被覆盖(差分)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
給你一個二維整數數組 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)
鏈接:https://leetcode-cn.com/problems/check-if-all-the-integers-in-a-range-are-covered
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 把每個滿足 [left, right] 的數插入到 set 中,檢查 set 的大小
4 ms 8.7 MB C++
以上的時間復雜度在數據范圍很大的時候,效率很低
- 可以采用差分的方法,參考官方題解
類似題目:LeetCode 1109. 航班預訂統計(差分思想)
4 ms 8.7 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 1893. 检查是否区域内所有整数都被覆盖(差分)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pip/conda导出 requirem
- 下一篇: LeetCode meituan-003