#include <stdio.h> #include <stdint.h> uint8_t is_circular_match(uint16_t reg, uint16_t target) { // Your code here uint16_t n = 0; uint16_t test = (uint16_t)((target << n) | (target >> (16 - n))); while ((0 != (test^reg)) && (n <= 15)) { test = (uint16_t)((target << n) | (target >> (16 - n))); n++; } if(n <= 15) { return 1; } else { return 0; } } int main() { uint16_t reg, target; scanf("%hu %hu", ®, &target); printf("%hhu", is_circular_match(reg, target)); return 0; }
Test Cases
Test Results
Input
45056 11
Expected Output
1