문제
문제 답안
class Solution {
public int solution(int n) {
int answer = 0;
int cnt = bit(n);
for(int i = n+1; i < 1000000; i++){
int BitCmp = bit(i);
if(cnt == BitCmp){
answer = i;
break;
}
}
return answer;
}
public int bit(int n){
int count = 0;
while(n / 2 > 0){
if(n%2 == 1)
count++;
n /= 2;
}
return count;
}
}
답안 풀이
첨엔 2진수로 바뀐 string함수 따로, string에서 1을 찾아 count하는 함수 따로 만들어줬다.
그랬더니 효율성테스트에서 0점이였다.
비효율적이라는 리뷰를 받았고 리뷰대로 합쳐줬더니 효율성 테스트도 통과했다!