/* 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
{
{
// your code goes here
int n = 4;
int k = 4;
int[] arr = new int[]{1,3,2,4};
System.
out.
println(helper
(arr,n,k
)); }
static int helper(int[]arr, int n, int k){
int[] preSum = new int[n];
HashMap
<Integer,Integer
> map
= new HashMap
<>(); int cnt = 0;
preSum[0] = arr[0];
for(int i=1;i<n;i++){
preSum[i] = preSum[i-1]+arr[i];
}
map.put(0,1);
for(int i=0;i<n;i++){
int modFreq = (preSum[i]%k-i%k+k)%k;
cnt+= map.getOrDefault(modFreq,0);
map.put(modFreq,map.getOrDefault(modFreq,0)+1);
}
return cnt;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCQlpbnQgbiA9IDQ7CgkJaW50IGsgPSA0OwoJCWludFtdIGFyciA9IG5ldyBpbnRbXXsxLDMsMiw0fTsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oaGVscGVyKGFycixuLGspKTsKIAl9CiAJc3RhdGljIGludCBoZWxwZXIoaW50W11hcnIsIGludCBuLCBpbnQgayl7CiAJCWludFtdIHByZVN1bSA9IG5ldyBpbnRbbl07CiAJCUhhc2hNYXA8SW50ZWdlcixJbnRlZ2VyPiBtYXAgPSBuZXcgSGFzaE1hcDw+KCk7CiAJCWludCBjbnQgPSAwOwogCQlwcmVTdW1bMF0gPSBhcnJbMF07CiAJCWZvcihpbnQgaT0xO2k8bjtpKyspewogCQkJcHJlU3VtW2ldID0gcHJlU3VtW2ktMV0rYXJyW2ldOwogCQl9CiAJCW1hcC5wdXQoMCwxKTsKIAkJZm9yKGludCBpPTA7aTxuO2krKyl7CiAJCQlpbnQgbW9kRnJlcSA9IChwcmVTdW1baV0lay1pJWsrayklazsKIAkJCWNudCs9IG1hcC5nZXRPckRlZmF1bHQobW9kRnJlcSwwKTsKIAkJCW1hcC5wdXQobW9kRnJlcSxtYXAuZ2V0T3JEZWZhdWx0KG1vZEZyZXEsMCkrMSk7CiAJCX0KIAkJCiAJCXJldHVybiBjbnQ7CiAJfQp9