[leetcode]476. Number Complement
Analysis
ummmm~—— [ummmm~]
Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.
把一个数转换成二进制,然后再对每位进行翻转,即1变成0,0变成1,然后再输出对应的十进制数。
Implement
class Solution {
public:
int findComplement(int num) {
vector<int> nums;
while(num){
nums.push_back(num%2);
num /= 2;
}
for(int i=0; i<nums.size(); i++)
nums[i] = 1 - nums[i];
int res = 0;
for(int i=0; i<nums.size(); i++)
res += nums[i]*pow(2, i);
return res;
}
};