🗒️2875. 无限数组的最短子数组(二刷)
2025-4-15
| 2025-4-15
0  |  阅读时长 0 分钟
type
status
date
slug
summary
tags
category
icon
password
创建时间
Apr 15, 2025 02:05 AM
给你一个下标从 0 开始的数组 nums 和一个整数 target 。
下标从 0 开始的数组 infinite_nums 是通过无限地将 nums 的元素追加到自己之后生成的。
请你从 infinite_nums 中找出满足 元素和 等于 target 的 最短 子数组,并返回该子数组的长度。如果不存在满足条件的子数组,返回 -1 。

不定长滑动窗口——最小问题

本题需要转一个弯。我们并不需要真的去求解循环求解,得到最后的长度。
我们数组是循环的,也就是说当 target 大于我们的数组总和时,我们其实只需要对 target 取余,对取余后的 target 使用滑动窗口即可。看代码很好懂。

📎 参考

 
  • 【题单】滑动窗口与双指针
  • 76. 最小覆盖子串(二刷)1234. 替换子串得到平衡字符串(二刷)
    Loading...