#include <stdio.h> #include <stdint.h> uint16_t spread_bits(uint8_t val) { // Your logic here uint16_t data = 0; data |= 1&val; data |= ((1&(val>>1)) << 2); data |= ((1&(val>>2)) << 4); data |= ((1&(val>>3)) << 6); data |= ((1&(val>>4)) << 8); data |= ((1&(val>>5)) << 10); data |= ((1&(val>>6)) << 12); data |= ((1&(val>>7)) << 14); return data; } 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