#include <stdio.h> #include <stdint.h> uint8_t compress_bits(uint16_t reg){ uint8_t x = 0; for(uint8_t i = 0; i < 16; i += 2){ x = x | ( ((reg >> i)&0x0001) <<(i/2) ) ; } return x; } int main(){ uint16_t value; scanf("%hu",&value); printf("%hhu",compress_bits(value)); return 0; }
Test Cases
Test Results
Input
20548
Expected Output
202