https://programmers.co.kr/learn/courses/30/lessons/12911
- 주어진 n을 이진수로 나타냈을 때, 해당 이진수의 1의 갯수와 n보다 큰 값들 중 값을 이진수로 표현했을 때, n의 1의 갯수와 같은 갯수를 가진 값 중 가장 작은 값이 무엇인지 찾는 과정을 거쳐야겠다고 생각함.
function solution(n) {
var tmp = trans(n);
n++;
while(tmp != trans(n)){
n++;
}
return n;
function trans(n){
var ret = 0;
while(n != 0){
if(n%2 == 1){
ret++;
}
n = Number.parseInt(n/2);
}
return ret;
}
}