
Java Subarray HackerRank Solution
We define the following:
- A subarray of an n-element array is an array composed from a contiguous block of the original array’s elements. For example, if array=[1,2,3], then the subarrays are [1], [2], [3], [1,2], [2,3], and [1,2,3]. Something like [1,3] would not be a subarray as it’s not a contiguous subsection of the original array.
- The sum of an array is the total sum of its elements.
- An array’s sum is negative if the total sum of its elements is negative.
- An array’s sum is positive if the total sum of its elements is positive.
Given an array of n integers, find and print its number of negative subarrays on a new line.
Input Format
The first line contains a single integer, n, denoting the length of array .
The second line contains space-separated integers describing each respective element, ai, in array A.
Constraints
- 1<=n<=100
- -10^4<=ai<=10^4
Output Format
Print the number of subarrays of A having negative sums.
Sample Input
5 1 -2 4 -5 1
Sample Output
9
Code Solution:
#Java Subarray HackerRank Solution import java.io.*; import java.util.*; public class Solution { public static void main(String[] args) { Scanner sc =new Scanner(System.in); int n=sc.nextInt(); int[] a = new int[n]; for(int i=0;i<n;i++) a[i]=sc.nextInt(); /* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */ int count=0; int sum; for(int i=0;i<n;i++){ sum=0; for(int j=0;j<n;j++){ if(j>=i){ sum += a[j]; } if(sum<0){ count++; } } } System.out.println(count); } } #Java Subarray HackerRank Solution
Disclaimer: This problem is originally created and published by HackerRank, we only provide solutions to this problem. Hence, doesn’t guarantee the truthfulness of the problem. This is only for information purposes.