🗒️632. 最小区间
2025-4-16
| 2025-4-16
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Apr 16, 2025 02:07 AM
你有 k 个 非递减排列 的整数列表。找到一个 最小 区间,使得 k 个列表中的每个列表至少有一个数包含在其中。
我们定义如果 b-a < d-c 或者在 b-a == d-c 时 a < c,则区间 [a,b] 比 [c,d] 小。

不定长滑动窗口——最小

思路:
  • 给每个数字打上标签,标记其是 k 个列表中的哪一个
  • 然后把这 k 个列表中的元素排序
  • 滑动窗口,要求每个列表中的元素至少出现一次
难点是如何打上标签!!!——使用 pair<int, int> 构造
不定长滑动窗口——最小
  • 判断左窗口移动——窗口中的元素使得 k 个列表中的每个列表至少有一个数包含其中
  • 在移动左窗口的过程中,得到最小值

📎 参考

  • 【题单】滑动窗口与双指针
  • Important
  • 1358. 包含所有三种字符的子字符串数目(二刷)76. 最小覆盖子串(二刷)
    Loading...