leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
0477.cpp (419B)
0 class Solution {
1 public:
2 int totalHammingDistance(const vector<int> &nums) const {
3 const int n = size(nums);
4 int res = 0;
6 for (unsigned mask = 1; mask <= 1 << 30; mask <<= 1) {
7 int count =
8 accumulate(begin(nums), end(nums), 0, [&mask](int a, int b) { return a + !!(b & mask); });
9 res += count * (n - count);
10 }
12 return res;
13 }
14 };