fork download
  1. // LonggVuz
  2. #include<bits/stdc++.h>
  3. using namespace std;
  4. // ☞ Think twice, code once ☜
  5. void End(){
  6. cerr << "=> Smoothly Finished! Time taken: ";
  7. cerr << (0.001 * clock()) << "s" << string(25, '\t');
  8. }
  9. #define Sonic() cin.tie(0) -> sync_with_stdio(0)
  10. #define out(x) return cout << x, void()
  11. #define fix(x) fixed << setprecision(x)
  12. #define all(x) begin(x), end(x)
  13. #define len(x) (int)x.size()
  14. #define ms(a, x) memset(a, x, sizeof(a))
  15. #define bit(n, x) (n >> x & 1)
  16. #define pb push_back
  17. #define is insert
  18. #define el '\n'
  19. #define ld long double
  20. #define int int64_t
  21.  
  22. const int mod = 1e9 + 7;
  23. const int oo = 1e18 + 7;
  24. const int mxn = 1e5 + 7;
  25.  
  26. int f[mxn];
  27.  
  28. void LonggVuz(){
  29. int n, k; cin >> n >> k;
  30. int a[n+5];
  31. for(int i=1; i<=n; i++){
  32. cin >> a[i];
  33. }
  34. int res = 0, cnt = 0;
  35. f[0] = 1;
  36. for(int i=1; i<=n; i++){
  37. cnt += a[i] % 2;
  38. if(cnt >= k) res += f[cnt - k];
  39. ++f[cnt];
  40. }cout << res;
  41. }
  42.  
  43. signed main(){
  44. Sonic();
  45.  
  46. int TC = 1; //cin >> TC;
  47. while(TC--) LonggVuz();
  48.  
  49. End();
  50. }
  51.  
Success #stdin #stdout #stderr 0s 5280KB
stdin
4 2
1 3 2 3
stdout
3
stderr
=> Smoothly Finished! Time taken: 4.68s