Number of Bit Changes to Make Two Integers Equal - Practice Coding | SlaveCode
0
0123456789
0
0123456789
:
0
0123456789
0
0123456789
3226. Number of Bit Changes to Make Two Integers Equal
Easy
10 Points
Bit Manipulation
You are given two positive integers n and k.
You can choose any bit in the binary representation of n that is equal to 1 and change it to 0.
Return the number of changes needed to make n equal to k. If it is impossible, return -1.
Examples
Example 1
Input: n = 13, k = 4
Output: 2
Explanation: Initially, the binary representations of n and k are n = (1101) 2 and k = (0100) 2 . We can change the first and fourth bits of n . The resulting integer is n = ( 0 10 0 ) 2 = k .
Example 2
Input: n = 21, k = 21
Output: 0
Explanation: n and k are already equal, so no changes are needed.
Example 3
Input: n = 14, k = 13
Output: -1
Explanation: It is not possible to make n equal to k .
Constraints
1 <= n, k <= 106
3226. Number of Bit Changes to Make Two Integers Equal
Easy
10 Points
Bit Manipulation
You are given two positive integers n and k.
You can choose any bit in the binary representation of n that is equal to 1 and change it to 0.
Return the number of changes needed to make n equal to k. If it is impossible, return -1.
Examples
Example 1
Input: n = 13, k = 4
Output: 2
Explanation: Initially, the binary representations of n and k are n = (1101) 2 and k = (0100) 2 . We can change the first and fourth bits of n . The resulting integer is n = ( 0 10 0 ) 2 = k .
Example 2
Input: n = 21, k = 21
Output: 0
Explanation: n and k are already equal, so no changes are needed.
Example 3
Input: n = 14, k = 13
Output: -1
Explanation: It is not possible to make n equal to k .