- #include <iostream> 
- using namespace std; 
-   
-     int bits_needed(uint32_t value) 
-     { 
-         int bits = 0; 
-         if (value >= 0x10000) 
-         { 
-             bits += 16; 
-             value >>= 16; 
-         } 
-         if (value >= 0x100) 
-         { 
-             bits += 8; 
-             value >>= 8; 
-         } 
-         if (value >= 0x10) 
-         { 
-             bits += 4; 
-             value >>= 4; 
-         } 
-         if (value >= 0x4) 
-         { 
-             bits += 2; 
-             value >>= 2; 
-         } 
-         return bits + value; 
-     } 
-   
- int main() { 
- 	cout << bits_needed(30665) << endl; 
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKICAgIGludCBiaXRzX25lZWRlZCh1aW50MzJfdCB2YWx1ZSkKICAgIHsKICAgICAgICBpbnQgYml0cyA9IDA7CiAgICAgICAgaWYgKHZhbHVlID49IDB4MTAwMDApCiAgICAgICAgewogICAgICAgICAgICBiaXRzICs9IDE2OwogICAgICAgICAgICB2YWx1ZSA+Pj0gMTY7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA+PSAweDEwMCkKICAgICAgICB7CiAgICAgICAgICAgIGJpdHMgKz0gODsKICAgICAgICAgICAgdmFsdWUgPj49IDg7CiAgICAgICAgfQogICAgICAgIGlmICh2YWx1ZSA+PSAweDEwKQogICAgICAgIHsKICAgICAgICAgICAgYml0cyArPSA0OwogICAgICAgICAgICB2YWx1ZSA+Pj0gNDsKICAgICAgICB9CiAgICAgICAgaWYgKHZhbHVlID49IDB4NCkKICAgICAgICB7CiAgICAgICAgICAgIGJpdHMgKz0gMjsKICAgICAgICAgICAgdmFsdWUgPj49IDI7CiAgICAgICAgfQogICAgICAgIHJldHVybiBiaXRzICsgdmFsdWU7CiAgICB9CgppbnQgbWFpbigpIHsKCWNvdXQgPDwgYml0c19uZWVkZWQoMzA2NjUpIDw8IGVuZGw7CglyZXR1cm4gMDsKfQ==