int minChanges(int n, int k) { if(n (k & 1)) { count++; } n >>= 1; k >>= 1; } return count; } int minChanges1(int n, int k) { return (n & k) == k ? __builtin_popcount(n ^ k) : -1; }