#include <stdio.h>
#include <stdint.h>
uint16_t spread_bits(uint8_t val) {
// Your logic here
uint16_t num = 0;
for(int i=0; i<16; i++){
if(val>>i&1) // checking the bit is set
num |= (((val>>i)&1)<<i*2); // right shifting and inserting the set bit
}
return num;
}
int main() {
uint8_t val;
scanf("%hhu", &val);
uint16_t result = spread_bits(val);
printf("%u", result);
return 0;
}
uint16_t spread_bits(uint8_t val) {
// Your logic here
uint16_t num = 0;
for(int i=0; i<16; i++){
if(val>>i&1) // checking the bit is set
num |= (((val>>i)&1)<<i*2); // right shifting and inserting the set bit
}
return num;
}
Input
202
Expected Output
20548