코드
using namespace std;
int Binarycount1(int N){ // 2진수 중 1의 갯수 구하는 함수
int count1=0; // 2진수 안의 1의 갯수
while(N>0){
if(N%2==1){
count1++;
}
N=N/2;
}
return count1;
}
int solution(int n) {
int answer = Binarycount1(n); // n -> 2진수 변환 후 1의 갯수 저장
while(true){
n++; // 조건1 n보다 큰 자연수 -> n값 증가
if(Binarycount1(n)==answer){ // 조건2 2진수 변환 후 1의 갯수 같아야 함
break;
}
}
return answer=n;
}
'C++ > programmers 코딩테스트(level 2) C++' 카테고리의 다른 글
[C/C++] programmers Level 2 카펫 (0) | 2023.10.08 |
---|---|
[C/C++] programmers Level 2 예상 대진표 (0) | 2023.10.07 |
[C/C++] programmers Level 2 점프와 순간 이동 (0) | 2023.10.05 |
[C/C++] programmers Level 2 짝지어 제거하기 (0) | 2023.10.05 |
[C/C++] programmers Level 2 괄호 회전하기 (0) | 2023.10.01 |