fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void solve() {
  5. int n; long long k;
  6. cin>>n>>k;
  7.  
  8. vector<long long> h(n+1);
  9. unordered_map<long long,long long> mp;
  10.  
  11. mp[0]=1;
  12.  
  13. long long sum=0,ans=0;
  14.  
  15. for(int i=1;i<=n;i++) {
  16. long long x;
  17. cin>>x;
  18. sum+=x;
  19.  
  20. if(i>=k)
  21. mp[h[i-k]]--;
  22.  
  23. long long y=((sum-i)%k+k)%k;
  24.  
  25. ans+=mp[y];
  26. mp[y]++;
  27. h[i]=y;
  28. }
  29.  
  30. cout<<ans<<'\n';
  31. }
  32.  
  33. int main() {
  34. ios_base::sync_with_stdio(false);
  35. cin.tie(NULL);
  36.  
  37. int t; cin>>t;
  38. while(t--) solve();
  39. }
Success #stdin #stdout 0s 5316KB
stdin
1
5 3
1 4 3 2 1
stdout
5