#include <stdio.h> #include <stdint.h> uint16_t spread_bits(uint8_t val) { // Your logic here uint32_t reg = val; uint32_t result; uint32_t mask = 1; for (int i = 0; i < 8; i++) { uint8_t bit = (val >> i) & 1; // Extract i-th bit result |= (bit << (2 * i)); // Place in 2*i position } return result; } int main() { uint8_t val; scanf("%hhu", &val); uint16_t result = spread_bits(val); printf("%u", result); return 0; }
Test Cases
Test Results
Input
202
Expected Output
20548