FastPrepFastPrep
Problem Brief

Longest Subarray

NEW GRADOA

A subarray of array a is defined as a contiguous block of a's elements having a length that is less than or equal to the length of the array. For example, the subarrays of array a = [1, 2, 3] are [1], [2], [3], [1, 2], [2, 3], and [1, 2, 3]. Given an integer, k = 3, the subarrays having elements that sum to a number ≤ k are [1], [2], and [1, 2]. The longest of these subarrays is [1, 2], which has a length of 2. Given an array, a, determine its longest subarray that sums to less than or equal to a given value k.

Function Description

Complete the function maxLength in the editor below. The function must return an integer that represents the length of the longest subarray of a that sums to a number ≤ k.

maxLength has the following parameter(s):

  1. a[a[0],...a[n-1]]: an array of integers
  2. k: an integer

1Example 1

Input
a = [1, 2, 3], k = 4
Output
2
Explanation

The subarrays having elements that sum to a number ≤ 4 are [1], [2], and [1, 2]. The longest of these subarrays is [1, 2], which has a length of 2.

Constraints

Limits and guarantees your solution can rely on.

  • 1 ≤ n ≤ 10^5
  • 1 ≤ a[i] ≤ 10^3
  • 1 ≤ k ≤ 10^9
public int maxLength(int[] a, int k) {
  // write your code here
}
Input

a

[1, 2, 3]

k

4

Output

2

Sign in to submit your solution.