fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n,k;
  6. cin>>n>>k;
  7.  
  8. vector<int> numbers(n);
  9.  
  10. for(auto& number: numbers){
  11. cin>>number;
  12. }
  13.  
  14. int answer = 0;
  15.  
  16. unordered_map<int,int> hashSum;
  17.  
  18. int currSum = 0;
  19.  
  20. hashSum[currSum]++;
  21.  
  22. for(int i=0; i<n; i++){
  23.  
  24. currSum += numbers[i];
  25.  
  26.  
  27. if(hashSum.find(currSum - k) != hashSum.end())answer+=hashSum[currSum - k];
  28.  
  29. hashSum[currSum]++;
  30. }
  31.  
  32. cout<<answer<<" ";
  33.  
  34. return 0;
  35. }
Success #stdin #stdout 0.01s 5284KB
stdin
10 8
2 2 3 5 2 2 3 2 2 1
stdout
2