/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static int cntSubarrays(int[] arr, int k) {
// code here
Map
<Integer, Integer
> prefixSumCount
=new HashMap
<>(); int count=0;
int sum=0;
for(int num: arr){
sum+=num;
if(sum==k)count++;
int targetSum=sum-k;
if(prefixSumCount.containsKey(targetSum)){
count+=prefixSumCount.get(targetSum);
}
prefixSumCount.put(sum,prefixSumCount.getOrDefault(sum,0)+1);
}
return count;
}
public static void main
(String [] args
){ Scanner sc
=new Scanner
(System.
in); int n=sc.nextInt();
int [] arr=new int[n];
for(int i=0;i<n;i++){
arr[i]=sc.nextInt();
}
int k=sc.nextInt();
int cnt=cntSubarrays(arr,k);
System.
out.
println("Subarrays with sum "+k
+" is : "+cnt
); sc.close();
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgaW50IGNudFN1YmFycmF5cyhpbnRbXSBhcnIsIGludCBrKSB7CiAgICAgICAgLy8gY29kZSBoZXJlCiAgICAgICAgTWFwPEludGVnZXIsIEludGVnZXI+IHByZWZpeFN1bUNvdW50PW5ldyBIYXNoTWFwPD4oKTsKICAgICAgICBpbnQgY291bnQ9MDsKICAgICAgICBpbnQgc3VtPTA7CiAgICAgICAgZm9yKGludCBudW06IGFycil7CiAgICAgICAgICAgIHN1bSs9bnVtOwogICAgICAgICAgICBpZihzdW09PWspY291bnQrKzsKICAgICAgICAgICAgaW50IHRhcmdldFN1bT1zdW0tazsKICAgICAgICAgICAgaWYocHJlZml4U3VtQ291bnQuY29udGFpbnNLZXkodGFyZ2V0U3VtKSl7CiAgICAgICAgICAgICAgICBjb3VudCs9cHJlZml4U3VtQ291bnQuZ2V0KHRhcmdldFN1bSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcHJlZml4U3VtQ291bnQucHV0KHN1bSxwcmVmaXhTdW1Db3VudC5nZXRPckRlZmF1bHQoc3VtLDApKzEpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gY291bnQ7CiAgICB9CiAgICAKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBbXSBhcmdzKXsKICAgICAgICBTY2FubmVyIHNjPW5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IG49c2MubmV4dEludCgpOwogICAgICAgIGludCBbXSBhcnI9bmV3IGludFtuXTsKICAgICAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICAgICAgYXJyW2ldPXNjLm5leHRJbnQoKTsKICAgICAgICB9CiAgICAgICAgaW50IGs9c2MubmV4dEludCgpOwogICAgICAgIGludCBjbnQ9Y250U3ViYXJyYXlzKGFycixrKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlN1YmFycmF5cyB3aXRoIHN1bSAiK2srIiBpcyA6ICIrY250KTsKICAgICAgICBzYy5jbG9zZSgpOwogICAgfQp9