c++
class Solution {
public:
#define maxn 110
int dp[maxn];
int rob(vector<int>& nums) {
dp[0] = nums[0];
int n = nums.size();
for(int i = 1; i < n; ++i)
{
if(i == 1)
dp[1] = max(nums[0],nums[1]);
else
dp[i] = max(dp[i-1],(dp[i-2]+nums[i]));
}
return dp[n-1];
}
};
c++
class Solution {
public:
int findComplement(int n) {
if(n == 0)
return 1;
int k = 0;
while(1)
{
if((long long)1 << k > n)
break;
else
++k;
}
return (long long)(1<<k)-1-n;
}
};
c++
class Solution {
public:
int sum = 0;
int hammingWeight(uint32_t n) {
while(n)
{
if(n & 1)
{
sum++;
}
n>>=1;
}
return sum;
}
};
c++
class Solution {
public:
int sum = 0;
int hammingWeight(uint32_t n) {
while(n)
{
if(n&1)
{
++sum;
}
n>>=1;
}
return sum;
}
};
c++
class Solution {
int getcnt(int x)
{
int sum = 0;
while(x)
{
x &= x-1;
++sum;
}
return sum;
}
public:
int hammingDistance(int x, int y) {
return getcnt(x^y);
}
};