반응형
SMALL
https://programmers.co.kr/learn/courses/30/lessons/12911
- 2진수 n보다 큰 숫자 중 1의 개수가 같은 최소 2진수 구하기
- n을 계속 증가시키면서 1의 개수가 같아질 때 값 반환
- Integer.bitCount(n);
- 2진수의 1 개수 세주는 함수
class Solution {
public int solution(int n) {
int nBitCount = Integer.bitCount(n); // bitCount() : 1 개수를 세어주는 함수
while(true) {
n++; // n을 1씩 증가시키면서
if(nBitCount == Integer.bitCount(n)) { // 1의 개수가 같아지면 최소 다음 큰 숫자이므로
return n; // 반환
}
}
}
}
반응형
LIST
'JAVA > Algorithm' 카테고리의 다른 글
[프로그래머스/java] 숫자의 표현 (완전탐색) (0) | 2021.01.05 |
---|---|
[프로그래머스/java] 올바른 괄호 (stack 사용 유무) (0) | 2021.01.03 |
[프로그래머스/java] 구명보트 (0) | 2021.01.02 |
[프로그래머스/java] 위장 (HashMap - 가능한 조합의 개수) (0) | 2021.01.02 |
[프로그래머스/java] 전화번호 목록 (문자열 비교 - hashCode) *2021 첫 글* (0) | 2021.01.01 |