(LeetCode) 191. Number of 1 Bits

191. Number of 1 Bits

  • 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
class Solution {
// you need treat n as an unsigned value
fun hammingWeight(n: Int): Int = Integer.toBinaryString(n).count { it == '1' }
}

Point of Thinking

  • 주어진 unsigned value를 binaryString으로 변환한 뒤, 1만 카운트해주면 Accepted.