g2401_2500.s2429_minimize_xor.readme.md Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of leetcode-in-java Show documentation
Show all versions of leetcode-in-java Show documentation
Java-based LeetCode algorithm problem solutions, regularly updated
2429\. Minimize XOR
Medium
Given two positive integers `num1` and `num2`, find the positive integer `x` such that:
* `x` has the same number of set bits as `num2`, and
* The value `x XOR num1` is **minimal**.
Note that `XOR` is the bitwise XOR operation.
Return _the integer_ `x`. The test cases are generated such that `x` is **uniquely determined**.
The number of **set bits** of an integer is the number of `1`'s in its binary representation.
**Example 1:**
**Input:** num1 = 3, num2 = 5
**Output:** 3
**Explanation:** The binary representations of num1 and num2 are 0011 and 0101, respectively. The integer **3** has the same number of set bits as num2, and the value `3 XOR 3 = 0` is minimal.
**Example 2:**
**Input:** num1 = 1, num2 = 12
**Output:** 3
**Explanation:** The binary representations of num1 and num2 are 0001 and 1100, respectively. The integer **3** has the same number of set bits as num2, and the value `3 XOR 1 = 2` is minimal.
**Constraints:**
* 1 <= num1, num2 <= 109