Given a positive integer, print the next smallest and the next largest number that have the same number of 1 bits in their binary representation.
Example1:
Input: num = 2 (0b10) Output: [4, 1] ([0b100, 0b1])
Example2:
Input: num = 1 Output: [2, -1]
Note:
1 <= num <= 2147483647
- If there is no next smallest or next largest number, output -1.