// LonggVuz
#include<bits/stdc++.h>
using namespace std;
// ☞ Think twice, code once ☜
void End(){
cerr << "=> Smoothly Finished! Time taken: ";
cerr << (0.001 * clock()) << "s" << string(25, '\t');
}
#define Sonic() cin.tie(0) -> sync_with_stdio(0)
#define out(x) return cout << x, void()
#define fix(x) fixed << setprecision(x)
#define all(x) begin(x), end(x)
#define len(x) (int)x.size()
#define ms(a, x) memset(a, x, sizeof(a))
#define bit(n, x) (n >> x & 1)
#define pb push_back
#define is insert
#define el '\n'
#define ld long double
#define int int64_t
const int mod = 1e9 + 7;
const int oo = 1e18 + 7;
const int mxn = 1e5 + 7;
int f[mxn];
void LonggVuz(){
int n, k; cin >> n >> k;
int a[n+5];
for(int i=1; i<=n; i++){
cin >> a[i];
}
int res = 0, cnt = 0;
f[0] = 1;
for(int i=1; i<=n; i++){
cnt += a[i] % 2;
if(cnt >= k) res += f[cnt - k];
++f[cnt];
}cout << res;
}
signed main(){
Sonic();
int TC = 1; //cin >> TC;
while(TC--) LonggVuz();
End();
}
Ly8gTG9uZ2dWdXoKI2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKLy8g4pieIFRoaW5rIHR3aWNlLCBjb2RlIG9uY2Ug4picCnZvaWQgRW5kKCl7CiAgICBjZXJyIDw8ICI9PiBTbW9vdGhseSBGaW5pc2hlZCEgVGltZSB0YWtlbjogIjsKICAgIGNlcnIgPDwgKDAuMDAxICogY2xvY2soKSkgPDwgInMiIDw8IHN0cmluZygyNSwgJ1x0Jyk7Cn0KI2RlZmluZSBTb25pYygpIGNpbi50aWUoMCkgLT4gc3luY193aXRoX3N0ZGlvKDApCiNkZWZpbmUgb3V0KHgpIHJldHVybiBjb3V0IDw8IHgsIHZvaWQoKQojZGVmaW5lIGZpeCh4KSBmaXhlZCA8PCBzZXRwcmVjaXNpb24oeCkKI2RlZmluZSBhbGwoeCkgYmVnaW4oeCksIGVuZCh4KQojZGVmaW5lIGxlbih4KSAoaW50KXguc2l6ZSgpCiNkZWZpbmUgbXMoYSwgeCkgbWVtc2V0KGEsIHgsIHNpemVvZihhKSkKI2RlZmluZSBiaXQobiwgeCkgKG4gPj4geCAmIDEpCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgaXMgaW5zZXJ0CiNkZWZpbmUgZWwgJ1xuJwojZGVmaW5lIGxkIGxvbmcgZG91YmxlCiNkZWZpbmUgaW50IGludDY0X3QKCmNvbnN0IGludCBtb2QgPSAxZTkgKyA3Owpjb25zdCBpbnQgb28gPSAxZTE4ICsgNzsKY29uc3QgaW50IG14biA9IDFlNSArIDc7CgppbnQgZltteG5dOwoKdm9pZCBMb25nZ1Z1eigpewoJaW50IG4sIGs7IGNpbiA+PiBuID4+IGs7CglpbnQgYVtuKzVdOwoJZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CgkJY2luID4+IGFbaV07Cgl9CglpbnQgcmVzID0gMCwgY250ID0gMDsKCWZbMF0gPSAxOwoJZm9yKGludCBpPTE7IGk8PW47IGkrKyl7CgkJY250ICs9IGFbaV0gJSAyOwoJCWlmKGNudCA+PSBrKSByZXMgKz0gZltjbnQgLSBrXTsKCQkrK2ZbY250XTsKCX1jb3V0IDw8IHJlczsKfQoKc2lnbmVkIG1haW4oKXsKCVNvbmljKCk7CgkKCWludCBUQyA9IDE7IC8vY2luID4+IFRDOwoJd2hpbGUoVEMtLSkgTG9uZ2dWdXooKTsKCQoJRW5kKCk7Cn0K