#include <stdio.h>
#include <memory.h>
void printb(unsigned int x);
int bitcount(unsigned x);
int main(void){
int i;
unsigned int x = 0xFF30;
printb(x);
return 0;
}
int bitcount(unsigned x){
int b = 0;
while(x > 0)
if(x &= (x-1))
b++;
return ++b;
}
void printb(unsigned int x){
int i;
int mask = 0x1;
for(i = 15; i >= 0; i--){
printf("%d", (x
>> i
) & mask
); }
}
ICAgICNpbmNsdWRlIDxzdGRpby5oPgogICAgI2luY2x1ZGUgPG1lbW9yeS5oPgogICAgIAogICAgdm9pZCBwcmludGIodW5zaWduZWQgaW50IHgpOwogICAgaW50IGJpdGNvdW50KHVuc2lnbmVkIHgpOwogCiAgICAgCiAgICAgCiAgICBpbnQgbWFpbih2b2lkKXsKICAgIAlpbnQgaTsKICAgIAl1bnNpZ25lZCBpbnQgeCA9IDB4RkYzMDsKICAgICAKICAgIAlwcmludGIoeCk7CiAgICAJcHJpbnRmKCIlZFxuIiwgYml0Y291bnQoeCkpOwogICAgIAogICAgIAogICAgIAlyZXR1cm4gMDsKICAgIH0KICAgICAKICAgIGludCBiaXRjb3VudCh1bnNpZ25lZCB4KXsKICAgIAlpbnQgYiA9IDA7CiAgICAgCiAgICAJd2hpbGUoeCA+IDApCiAgICAJCWlmKHggJj0gKHgtMSkpCiAgICAJCQliKys7CiAgICAJcmV0dXJuICsrYjsKICAgIH0KICAgICAKICAgIHZvaWQgcHJpbnRiKHVuc2lnbmVkIGludCB4KXsKICAgIAlpbnQgaTsKICAgIAlpbnQgbWFzayA9IDB4MTsKICAgICAKICAgIAlmb3IoaSA9IDE1OyBpID49IDA7IGktLSl7CiAgICAJCXByaW50ZigiJWQiLCAoeCA+PiBpKSAmIG1hc2spOwogICAgCQlpZigoaSAlIDQpID09IDApIHB1dGNoYXIoJyAnKTsKICAgIAl9CiAgICAJcHV0Y2hhcignXG4nKTsKICAgIH0=