#include <stdio.h>
#include <stdint.h>
uint16_t spread_bits(uint8_t val) {
// Your logic here
uint16_t result = 0; // Start with all zeros
for (int i = 0; i < 8; i++) {
// 1. Check if the i-th bit of the input is set
if (val & (1 << i)) {
// 2. If it is set, set the corresponding EVEN bit in the result
// Bit 0 goes to position 0 (0*2)
// Bit 1 goes to position 2 (1*2)
// Bit 2 goes to position 4 (2*2)
result |= (1 << (i * 2));
}
}
return result;
return 0;
}
int main() {
uint8_t val;
scanf("%hhu", &val);
uint16_t result = spread_bits(val);
printf("%u", result);
return 0;
}
Input
202
Expected Output
20548