fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. typedef long long int ll;
  4.  
  5. int main() {
  6. vector<int>arr={2,6,4,4,0};
  7. unordered_map<int,int>mp;
  8. int k;
  9. cin>>k;
  10. int count=0;
  11. int n=arr.size();
  12. mp[0]=1;
  13. int prefixsum=0;
  14. for(int i=0;i<n;i++)
  15. {
  16. prefixsum=prefixsum+arr[i];
  17. if(mp.find(prefixsum-k)!=mp.end())
  18. {
  19. count+=mp[prefixsum-k];
  20. }
  21. mp[prefixsum]++;
  22. }
  23.  
  24. cout<<count;
  25. }
  26.  
Success #stdin #stdout 0.01s 5308KB
stdin
8
stdout
3