#include <stdio.h> #include <stdint.h> uint8_t reverse_bits(uint8_t val) { // Your logic here for(int i=0; i<4; i++) { uint8_t first_bit = (val>>i)&0x01; uint8_t last_bit = (val>>(7-i))&0x01; val &= ~(1<<(7-i)); val &= ~(1<<i); val |= (first_bit<<(7-i)); val |= (last_bit<<i); // printf("%d %d %d \n",first_bit,last_bit,val); // if(i==1)return val; } return val; } int main() { uint8_t val; scanf("%hhu", &val); uint8_t result = reverse_bits(val); printf("%u", result); return 0; }
Test Cases
Test Results
Input
26
Expected Output
88