Update appNew update is available. Click here to update.

Minimum Subarray With Required Sum

Contributed by
Anish De
Last Updated: 23 Feb, 2023
Medium
yellow-spark
0/80
Avg time to solve 18 mins
Success Rate 85 %
Share
44 upvotes

Problem Statement

You have been given an array(ARR) of positive integers and an integer X. You have to find the minimum length subarray such that the sum of all of its elements is strictly greater than the given integer X.

Note:
A subarray is a contiguous block of elements that can be formed by deleting some (possibly zero) elements from the beginning or the end of the original array. 
For example :
If the given array is [1, 2, 3, 4, 5], then [2, 3, 4], [1, 2], [5] are some subarrays while [1, 3], [2, 3, 5] are not.

If there are multiple subarrays with minimum length, find one which appears earlier in the array (i.e. subarray that starts with lower index).

If there is no such subarray, print an empty line.
Detailed explanation ( Input/output format, Notes, Images )
Constraints :
1 <= N <= 5 * 10^5
1 <= X <= 10^9
1 <= ARR[i] <= 10^9

Time Limit: 1 sec
Sample Input 1:
4 13
13 7 6 12
Sample Output 1:
13 7
Explanation For Sample Input 1:
Out of all the subarrays, we have [13, 7] and [6, 12] with minimum length of 2 and sum of their elements greater than X = 13. As the starting index of [13, 7] is lower, we print it as the output.
Sample Input 2:
5 6
1 2 3 4 5
Sample Output 2:
3 4
Reset Code
Full screen
Auto
copy-code
Console