문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
양의 정수 n이 주어졌을 때, 이진 표현(해밍 가중치라고도 함)에서 설정된 비트의 수를 반환하는 함수를 작성해라.
#1
Input: n = 11
Output: 3
Explanation: 입력된 이진 문자열 1011에는 총 3개의 비트가 설정되어있다.
#2
Input: n = 128
Output: 1
Explanation: 입력된 이진 문자열 10000000에는 총 3개의 비트가 설정되어있다.
#3
Input: n = 2147483645
Output: 30
Explanation: 입력된 이진 문자열 1111111111111111111111111111101에는 총 3개의 비트가 설정되어있다.
class Solution {
public int hammingWeight(int n) {
int bits=0;
while(n > 0){
if((n & 1) != 0) bits++;
n = n >> 1;
}
return bits;
}
}