给定一个正整数,输出它的补数。补数是对该数的二进制表示取反。
class Solution {
public:
int findComplement(int num) {
int n = 1, num_copy = num;
while(num_copy/2)
{
++n;
num_copy /= 2;
}
while(n)
{
num ^= (1<<n-1);
n--;
}
return num;
}
};