调试中...
调试中...
题目描述
题目描述
题解
题解
提交记录
提交记录
代码
代码
测试用例
测试用例
测试结果
测试结果
简单
相关标签
相关企业
提示

给你一个整数数组 nums两个 整数 lr。你的任务是找到一个长度在 lr 之间(包含)且和大于 0 的 子数组最小 和。

返回满足条件的子数组的 最小 和。如果不存在这样的子数组,则返回 -1。

子数组 是数组中的一个连续 非空 元素序列。

 

示例 1:

输入: nums = [3, -2, 1, 4], l = 2, r = 3

输出: 1

解释:

长度在 l = 2r = 3 之间且和大于 0 的子数组有:

  • [3, -2] 和为 1
  • [1, 4] 和为 5
  • [3, -2, 1] 和为 2
  • [-2, 1, 4] 和为 3

其中,子数组 [3, -2] 的和为 1,是所有正和中最小的。因此,答案为 1。

示例 2:

输入: nums = [-2, 2, -3, 1], l = 2, r = 3

输出: -1

解释:

不存在长度在 lr 之间且和大于 0 的子数组。因此,答案为 -1。

示例 3:

输入: nums = [1, 2, 3, 4], l = 2, r = 4

输出: 3

解释:

子数组 [1, 2] 的长度为 2,和为 3,是所有正和中最小的。因此,答案为 3。

 

提示:

  • 1 <= nums.length <= 100
  • 1 <= l <= r <= nums.length
  • -1000 <= nums[i] <= 1000
通过次数
5K
提交次数
10K
通过率
49.7%


相关企业

提示 1
Check every subarray, since constraints are small.

相似题目

评论 (0)

贡献者
© 2025 领扣网络(上海)有限公司
0 人在线
行 1,列 1
运行和提交代码需要登录
nums =
[3,-2,1,4]
l =
2
r =
3
Source