Untitled
unknown
plain_text
2 years ago
707 B
5
Indexable
#include <iostream>
#include <vector>
#include <climits>
int minSubarrayLen(int target, std::vector<int>& nums) {
int minLength = INT_MAX;
int left = 0;
int sum = 0;
for (int right = 0; right < nums.size(); right++) {
sum += nums[right];
while (sum >= target) {
minLength = std::min(minLength, right - left + 1);
sum -= nums[left];
left++;
}
}
return (minLength != INT_MAX) ? minLength : 0;
}
int main() {
int target = 7;
std::vector<int> nums = {2, 3, 1, 2, 4, 3};
int minLength = minSubarrayLen(target, nums);
std::cout << "Minimal length of subarray: " << minLength << std::endl;
return 0;
}
Editor is loading...