#include <stdio.h> #include <stdint.h> uint32_t convert_endian(uint32_t value) { value = ((value & 0x0000FFFF) << 16) | ((value & 0xFFFF0000) >> 16); value = ((value & 0x00FF00FF) << 8) | ((value & 0xFF00FF00) >> 8); return value; } int main() { uint32_t val; scanf("%u", &val); printf("%u", convert_endian(val)); return 0; }
Test Cases
Test Results
Input
305419896
Expected Output
2018915346