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;
}
};
-
2:11:52
Side Scrollers Podcast
18 hours agoYouTube ADMITS BLATANT Censorship + California Wants to FINE “Hate Speech” + More | Side Scrollers
70.8K10 -
15:18
GritsGG
14 hours agoSweaty Quads w/ Bobby Poff!
12.8K2 -
17:11
Nikko Ortiz
1 day agoIs Poverty Your Fault?
33.4K35 -
1:25:15
The HotSeat
1 day agoIn Less Than Two Weeks, Here We Are Again.....
19.4K15 -
12:55
The Pascal Show
13 hours ago $3.23 earned'THAT'S HIS GIRLFRIEND!' D4vd's Friends Speak Out Revealing They Thought Celeste Was His Girlfriend!
10.2K1 -
LIVE
Lofi Girl
2 years agoSynthwave Radio 🌌 - beats to chill/game to
265 watching -
33:02
DeVory Darkins
8 hours ago $35.86 earnedComey INDICTED by grand jury in shocking announcement by DOJ as Trump claims MAJOR VICTORY
43.5K100 -
2:06:23
Inverted World Live
9 hours agoEpstein Worked for CIA According to OMG Reporting | Ep. 114
139K41 -
3:14:39
TimcastIRL
9 hours agoTrump DOJ Indicts James Comey, The ARRESTS Have BEGUN | Timcast IRL
329K403 -
7:54:14
SpartakusLIVE
11 hours ago#1 Hulking MASS squashes NOOBS for viewers’ DELIGHT
74.9K2