fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. void executeTime() {
  5. cerr << "Time Taken: " << (float)clock() / CLOCKS_PER_SEC << " secs";
  6. }
  7.  
  8. int main() {
  9.  
  10.  
  11. int n, k; cin >> n >> k;
  12.  
  13. vector<int> v(n);
  14. for (auto &x : v) {
  15. cin >> x;
  16. }
  17.  
  18.  
  19. unordered_map<int, int> mp;
  20.  
  21. int p = 0, ans = 0;
  22. for (int i = 0; i < n; i++) {
  23. p += v[i];
  24.  
  25. p %= k;
  26.  
  27. ans += mp[p - i - 1];
  28.  
  29. mp[p - i]++;
  30. }
  31.  
  32. cout << ans << endl;
  33.  
  34.  
  35.  
  36. executeTime();
  37. return 0;
  38. }
Success #stdin #stdout #stderr 0s 5248KB
stdin
5 100
1 4 2 3 5

stdout
1
stderr
Time Taken: 0.004541 secs