티스토리 뷰
https://programmers.co.kr/learn/courses/30/lessons/12911
int answer = 0;
String nStr = Integer.toBinaryString(n);
int oneValue = nStr.replace("0", "").length();
boolean flag = true;
while(flag){
n++;
String nStrTemp = Integer.toBinaryString(n);
if(nStrTemp.replace("0", "").length() == oneValue){
flag = false;
answer = n;
}
}
핵심은 toBinaryString을 알고 있느냐(몰라서 찾아봄...)
두번째로는 1의 갯수와 일치하는 부분인거 같다.
replace로 구하는 방법이 좀 참신한거같다.
'프로그래밍 > 알고리즘' 카테고리의 다른 글
int Array 로 List 변경방법 (0) | 2021.12.02 |
---|---|
월간 코드 챌린지 시즌1 > 두 개 뽑아서 더하기 (0) | 2021.11.29 |
연습문제 > 피보나치 수 (0) | 2021.11.29 |
2021 KAKAO BLIND RECRUITMENT > 신규 아이디 추천 (0) | 2021.11.29 |
[자바] 프로그래머스 - N개의 최소공배수 (0) | 2019.02.20 |