fork download
  1. #include <iostream>
  2. #include<queue>
  3. #include <algorithm>
  4. #include <map>
  5. #include<unordered_map>
  6. #include <set>
  7. #include <fstream>
  8. #include <vector>
  9. #include <math.h>
  10. #include <iomanip>
  11. #include <string>
  12. #include <cstring>
  13. using namespace std;
  14.  
  15. #define ll long long
  16.  
  17. ll mod = 1e9+7;
  18. const int MaxN = 1000;
  19. int MOD = 998244353;
  20. int bit[200000];
  21.  
  22. int a[500+5][505];
  23. ll ans=0;
  24. int main() {
  25. // freopen(".INP", "r", stdin);
  26. //freopen(".OUT", "w", stdout);
  27. int n;
  28. cin >> n;
  29. vector<ll> v(n+1);
  30. vector<ll> pref(n+1);
  31. pref[0]=0;
  32. map<ll,ll> cnt;
  33. for(int i=1;i<=n;i++){
  34. cin >> v[i];
  35. pref[i]= pref[i-1]+ v[i];
  36.  
  37. }
  38. for(int i=1;i<=n;i++){
  39. cnt[(pref[i-1]%2+2)%2]++;
  40. ans+= cnt[(pref[i]%2+2)%2];
  41. }
  42. cout << ans;
  43. return 0;
  44. }
Success #stdin #stdout 0.01s 5320KB
stdin
5
-5 0 -2 -2 0
stdout
10