Explore : Interview > Top Interveiw Questions > Easy Collection
분류 : Others
난이도 : Easy
Problem
Write a function that takes an unsigned integer and returns the number of ‘1’ bits it has (also known as the Hamming weight).
Example 1
1 2 3
Input: n = 00000000000000000000000000001011 Output: 3 Explanation: The input binary string 00000000000000000000000000001011 has a total of three '1' bits.
Example 2
1 2 3 4
Input: n = 00000000000000000000000010000000 Output: 1 Explanation: The input binary string 00000000000000000000000010000000 has a total of one '1' bit.
Example 3
1 2 3
Input: n = 11111111111111111111111111111101 Output: 31 Explanation: The input binary string 11111111111111111111111111111101 has a total of thirty one '1' bits.
Constraints
The input must be a binary string of length 32.
Solution
Exapnder
1 2 3 4
classSolution { // you need treat n as an unsigned value funhammingWeight(n: Int): Int = Integer.toBinaryString(n).count { it == '1' } }
Point of Thinking
주어진 unsigned value를 binaryString으로 변환한 뒤, 1만 카운트해주면 Accepted.