File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change 1+ ``` java
2+ import java.io.* ;
3+ import java.util.* ;
4+
5+ public class Main {
6+ private static BufferedReader br;
7+ private static StringTokenizer st;
8+ private static int n, k;
9+ private static int [] arr;
10+
11+ public static void main (String [] args ) throws IOException {
12+ br = new BufferedReader (new InputStreamReader (System . in));
13+ st = new StringTokenizer (br. readLine());
14+
15+ n = Integer . parseInt(st. nextToken());
16+ k = Integer . parseInt(st. nextToken());
17+
18+ arr = new int [n];
19+ st = new StringTokenizer (br. readLine());
20+ for (int i = 0 ; i < n; i++ )
21+ arr[i] = Integer . parseInt(st. nextToken());
22+
23+ Map<Long , Integer > prefixCount = new HashMap<> ();
24+ prefixCount. put(0L , 1 );
25+ long sum = 0 ;
26+ long answer = 0 ;
27+ for (int i = 0 ; i < n; i++ ) {
28+ sum += arr[i];
29+ answer += prefixCount. getOrDefault(sum - k, 0 );
30+ prefixCount. put(sum, prefixCount. getOrDefault(sum, 0 ) + 1 );
31+ // System.out.println(sum);
32+ // System.out.println(answer);
33+ }
34+
35+ System . out. println(answer);
36+ }
37+ }
38+ ```
You can’t perform that action at this time.
0 commit comments