#include <iostream>
using namespace std;
// Author: Nayaka Ghana Subrata
// 13
// 1 1 0 1
// (13, 1)
// -> 1 (tag) 1 (tag) 0 (skip) 1 (tag) = 3
int hitungNomorBit(int angka, int nomorBit){
if (nomorBit != 0 && nomorBit != 1) return -1;
int res = 0;
while (angka > 0){
// here, we can extract then shift to iterate the bits, so like take one and shift
if ((angka & 1) == nomorBit) res++;
angka >>= 1;
}
return res;
}
int main() {
int angka, nomorBit;
cin >> angka >> nomorBit;
int res = hitungNomorBit(angka, nomorBit);
// here, if the counted bit sum is none then it will return -1 that represents the null
cout << res << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKLy8gQXV0aG9yOiBOYXlha2EgR2hhbmEgU3VicmF0YQoKLy8gMTMKLy8gMSAxIDAgMQovLyAoMTMsIDEpCi8vIC0+IDEgKHRhZykgMSAodGFnKSAwIChza2lwKSAxICh0YWcpID0gMwoKaW50IGhpdHVuZ05vbW9yQml0KGludCBhbmdrYSwgaW50IG5vbW9yQml0KXsKCWlmIChub21vckJpdCAhPSAwICYmIG5vbW9yQml0ICE9IDEpIHJldHVybiAtMTsKCWludCByZXMgPSAwOwoJCgl3aGlsZSAoYW5na2EgPiAwKXsKCQkvLyBoZXJlLCB3ZSBjYW4gZXh0cmFjdCB0aGVuIHNoaWZ0IHRvIGl0ZXJhdGUgdGhlIGJpdHMsIHNvIGxpa2UgdGFrZSBvbmUgYW5kIHNoaWZ0CgkJaWYgKChhbmdrYSAmIDEpID09IG5vbW9yQml0KSByZXMrKzsKCQlhbmdrYSA+Pj0gMTsKCX0KCXJldHVybiByZXM7Cn0KCgppbnQgbWFpbigpIHsKCWludCBhbmdrYSwgbm9tb3JCaXQ7CgljaW4gPj4gYW5na2EgPj4gbm9tb3JCaXQ7CgkKCWludCByZXMgPSBoaXR1bmdOb21vckJpdChhbmdrYSwgbm9tb3JCaXQpOwoJCgkvLyBoZXJlLCBpZiB0aGUgY291bnRlZCBiaXQgc3VtIGlzIG5vbmUgdGhlbiBpdCB3aWxsIHJldHVybiAtMSB0aGF0IHJlcHJlc2VudHMgdGhlIG51bGwKCWNvdXQgPDwgcmVzIDw8IGVuZGw7CglyZXR1cm4gMDsKfQ==