#include <stdio.h>
#include <stdint.h>
uint16_t spread_bits(uint8_t val) {
uint16_t tmp = 0;
uint16_t test;
test = (val & 128); tmp |= (test << 7); val <<= 1;
test = (val & 128); tmp |= (test << 5); val <<= 1;
test = (val & 128); tmp |= (test << 3); val <<= 1;
test = (val & 128); tmp |= (test << 1); val <<= 1;
test = (val & 128); tmp |= (test >> 1); val <<= 1;
test = (val & 128); tmp |= (test >> 3); val <<= 1;
test = (val & 128); tmp |= (test >> 5); val <<= 1;
test = (val & 128); tmp |= (test >> 7); val <<= 1;
return tmp;
}
int main() {
uint8_t val;
scanf("%hhu", &val);
uint16_t result = spread_bits(val);
printf("%u", result);
return 0;
}
Input
202
Expected Output
20548