#include<bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define nl '\n'
#define mod 1000000007
#define fori(i,n) for(ll i=0;i < n;i++)
#define forn(i,n) for(ll i=1;i <= n;i++)
#define forx(i,x,n) for(ll i=x;i < n;i++)
#define sortx(x) sort(x.begin(),x.end())
#define sorty(x) sort(x.begin(),x.end(),greater<>())
using namespace std;
/*#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
template<typename T>
using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
using namespace __gnu_pbds;
#define ordered_multiset tree<int, null_type, less_equal<int>, rb_tree_tag, tree_order_statistics_node_update>
ll Mod(ll base, ll exp, ll MOD){
if(exp == 0) return 1;
ll res = Mod(base,exp/2,MOD);
if(exp % 2)
return (((res * res) % MOD)*base) % MOD;
else
return (res*res) % MOD;
}
ll gcd(ll x,ll y){
ll b = min(x,y);
ll a = max(x,y);
while(b != 0){
ll temp = b;
b = a % b;
a = temp;
}
return a;
}
ll div(vector<vector<ll>> &x){
for(ll i=1;i <= 1000000000;i++){
for(ll j=i;j <= 1000000000;j+=i){
x[j].push_back(i);
}
}
}
ll fact[100001];
ll inv[100001];
void pref(){
fact[0]=1;
inv[0]=1;
for(ll i=1;i <= 100000;i++){
fact[i] = (fact[i-1]*i)%mod;
}
for(ll i=1;i <= 100000;i++){
inv[i] = (inv[i-1]*Mod(i,mod-2,mod))%mod;
}
}
bool prime(ll n){
int c=0;
for(ll i=1;i <= n;i++){
if(n % i == 0) c++;
if(c > 2) break;
}
if(c == 2) return true;
return false;
}*/
ll findnum(ll t){
ll c=0;
while(t > 0){
c += t % 2;
t /= 2;
}
return c;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n,m,k,ans=0;
cin >> n >> m >> k;
vector<ll> x(m+1);
fori(i,m+1){
cin >> x[i];
}
ll p = x[m];
for(ll i=0;i < m;i++){
ll t = p^x[i];
ll ones = findnum(t);
if(ones <= k) ans++;
}
cout << ans;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcKI2RlZmluZSB1bGwgdW5zaWduZWQgbG9uZyBsb25nCiNkZWZpbmUgbmwgJ1xuJwojZGVmaW5lIG1vZCAxMDAwMDAwMDA3CiNkZWZpbmUgZm9yaShpLG4pIGZvcihsbCBpPTA7aSA8IG47aSsrKQojZGVmaW5lIGZvcm4oaSxuKSBmb3IobGwgaT0xO2kgPD0gbjtpKyspCiNkZWZpbmUgZm9yeChpLHgsbikgZm9yKGxsIGk9eDtpIDwgbjtpKyspCiNkZWZpbmUgc29ydHgoeCkgc29ydCh4LmJlZ2luKCkseC5lbmQoKSkKI2RlZmluZSBzb3J0eSh4KSBzb3J0KHguYmVnaW4oKSx4LmVuZCgpLGdyZWF0ZXI8PigpKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwovKiNpbmNsdWRlIDxleHQvcGJfZHMvYXNzb2NfY29udGFpbmVyLmhwcD4KI2luY2x1ZGUgPGV4dC9wYl9kcy90cmVlX3BvbGljeS5ocHA+CnVzaW5nIG5hbWVzcGFjZSBfX2dudV9wYmRzOwp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgp1c2luZyBvcmRlcmVkX3NldCA9IHRyZWU8VCwgbnVsbF90eXBlLCBsZXNzPFQ+LCByYl90cmVlX3RhZywgdHJlZV9vcmRlcl9zdGF0aXN0aWNzX25vZGVfdXBkYXRlPjsKdXNpbmcgbmFtZXNwYWNlIF9fZ251X3BiZHM7CiNkZWZpbmUgb3JkZXJlZF9tdWx0aXNldCB0cmVlPGludCwgbnVsbF90eXBlLCBsZXNzX2VxdWFsPGludD4sIHJiX3RyZWVfdGFnLCB0cmVlX29yZGVyX3N0YXRpc3RpY3Nfbm9kZV91cGRhdGU+CgpsbCBNb2QobGwgYmFzZSwgbGwgZXhwLCBsbCBNT0QpewogICAgaWYoZXhwID09IDApIHJldHVybiAxOwogICAgbGwgcmVzID0gTW9kKGJhc2UsZXhwLzIsTU9EKTsKICAgIGlmKGV4cCAlIDIpIAogICAgICByZXR1cm4gKCgocmVzICogcmVzKSAlIE1PRCkqYmFzZSkgJSBNT0Q7CiAgICBlbHNlCiAgICAgIHJldHVybiAocmVzKnJlcykgJSBNT0Q7Cn0KCmxsIGdjZChsbCB4LGxsIHkpewogIGxsIGIgPSBtaW4oeCx5KTsKICBsbCBhID0gbWF4KHgseSk7CiAgd2hpbGUoYiAhPSAwKXsKICAgIGxsIHRlbXAgPSBiOwogICAgYiA9IGEgJSBiOwogICAgYSA9IHRlbXA7CiAgfQogIHJldHVybiBhOwp9CgpsbCBkaXYodmVjdG9yPHZlY3RvcjxsbD4+ICZ4KXsKICBmb3IobGwgaT0xO2kgPD0gMTAwMDAwMDAwMDtpKyspewogICAgZm9yKGxsIGo9aTtqIDw9IDEwMDAwMDAwMDA7ais9aSl7CiAgICAgIHhbal0ucHVzaF9iYWNrKGkpOwogICAgfQogIH0KfQoKbGwgZmFjdFsxMDAwMDFdOwpsbCBpbnZbMTAwMDAxXTsKCnZvaWQgcHJlZigpewogIGZhY3RbMF09MTsKICBpbnZbMF09MTsKICBmb3IobGwgaT0xO2kgPD0gMTAwMDAwO2krKyl7CiAgICBmYWN0W2ldID0gKGZhY3RbaS0xXSppKSVtb2Q7CiAgfQogIGZvcihsbCBpPTE7aSA8PSAxMDAwMDA7aSsrKXsKICAgIGludltpXSA9IChpbnZbaS0xXSpNb2QoaSxtb2QtMixtb2QpKSVtb2Q7CiAgfQp9Cgpib29sIHByaW1lKGxsIG4pewogIGludCBjPTA7CiAgZm9yKGxsIGk9MTtpIDw9IG47aSsrKXsKICAgIGlmKG4gJSBpID09IDApIGMrKzsKICAgIGlmKGMgPiAyKSBicmVhazsKICB9CiAgaWYoYyA9PSAyKSByZXR1cm4gdHJ1ZTsKICByZXR1cm4gZmFsc2U7Cn0qLwoKbGwgZmluZG51bShsbCB0KXsKICBsbCBjPTA7CiAgd2hpbGUodCA+IDApewogICAgYyArPSB0ICUgMjsKICAgIHQgLz0gMjsKICB9CiAgcmV0dXJuIGM7Cn0KCmludCBtYWluKCl7CiAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogIGNpbi50aWUobnVsbHB0cik7CiAgaW50IG4sbSxrLGFucz0wOwogIGNpbiA+PiBuID4+IG0gPj4gazsKICB2ZWN0b3I8bGw+IHgobSsxKTsKICBmb3JpKGksbSsxKXsKICAgIGNpbiA+PiB4W2ldOwogIH0KICBsbCBwID0geFttXTsKICBmb3IobGwgaT0wO2kgPCBtO2krKyl7CiAgICBsbCB0ID0gcF54W2ldOwogICAgbGwgb25lcyA9IGZpbmRudW0odCk7CiAgICBpZihvbmVzIDw9IGspIGFucysrOwogIH0KICBjb3V0IDw8IGFuczsKfQ==