Premium Only Content

862. Shortest Subarray with Sum at Least K
Given an integer array nums and an integer k, return the length of the shortest non-empty subarray of nums with a sum of at least k. If there is no such subarray, return -1.
A subarray is a contiguous part of an array.
Example 1:
Input: nums = [1], k = 1
Output: 1
Example 2:
Input: nums = [1,2], k = 4
Output: -1
Example 3:
Input: nums = [2,-1,2], k = 3
Output: 3
Constraints:
1 <= nums.length <= 105
-105 <= nums[i] <= 105
1 <= k <= 109
class Solution {
public:
int shortestSubarray(vector<int>& nums, int k) {
int n = nums.size();
// Initialize result to the maximum possible integer value
int shortestSubarrayLength = INT_MAX;
long long cumulativeSum = 0;
// Min-heap to store cumulative sum and its corresponding index
priority_queue<pair<long long, int>, vector<pair<long long, int>>,greater<>> prefixSumHeap;
// Iterate through the array
for (int i = 0; i < n; i++) {
// Update cumulative sum
cumulativeSum += nums[i];
// If cumulative sum is already >= k, update shortest length
if (cumulativeSum >= k) {
shortestSubarrayLength = min(shortestSubarrayLength, i + 1);
}
// Remove subarrays from heap that can form a valid subarray
while (!prefixSumHeap.empty() && cumulativeSum - prefixSumHeap.top().first >= k) {
// Update shortest subarray length
shortestSubarrayLength = min(shortestSubarrayLength, i - prefixSumHeap.top().second);
prefixSumHeap.pop();
}
// Add current cumulative sum and index to heap
prefixSumHeap.emplace(cumulativeSum, i);
}
// Return -1 if no valid subarray found
return shortestSubarrayLength == INT_MAX ? -1 : shortestSubarrayLength;
}
};
-
LIVE
The Rubin Report
39 minutes agoJimmy Kimmel Humiliated as NY Post Exposes His Dark Reaction to Being Canceled
2,224 watching -
LIVE
LFA TV
12 hours agoKIMMEL GONE | ANTIFA LABELED TERRORISTS! - THURSDAY 9/18/25
4,293 watching -
1:41:51
Dear America
2 hours agoJimmy Kimmel’s Show Gets CANCELLED Because Of His Comments On Charlie!! + Kash EXPOSES CIA!!
144K55 -
LIVE
Benny Johnson
1 hour agoHow We Got Jimmy Kimmel Ripped Off-Air, Why The Right Must Fight | Trump Press Conference LIVE Now
5,989 watching -
LIVE
The Big Migâ„¢
1 hour agoThe Lefts Nuclear Meltdown, Cancel Culture Cancels Jimmy Kimmel
6,210 watching -
LIVE
Chad Prather
49 minutes agoJimmy Kimmel Is FIRED After Horrific Charlie Kirk Comments + Trump Designates ANTIFA As Terrorists!
433 watching -
55:01
The White House
2 hours agoPress Conference with the Prime Minister of the United Kingdom of Great Britain and Northern Ireland
1.25K3 -
Barry Cunningham
58 minutes agoBREAKING NEWS: PRESIDENT TRUMP PARTICIPATES IN PRESS CONFERENCE IN ENGLAND
2 -
LIVE
Badlands Media
8 hours agoBadlands Daily: September 18, 2025
3,828 watching -
LIVE
JuicyJohns
2 hours ago $0.61 earned🟢#1 REBIRTH PLAYER 10.2+ KD🟢
58 watching