[#21][알고리즘] 다음 큰 숫자
프로그래머스 > 다음 큰 숫자
문제 링크(https://programmers.co.kr/learn/challenge_codes/170)C++풀이
#include<iostream>
using namespace std;
int countOne(int num){
int ans=0;
while(num!= 1){
if(num%2 == 1){
ans++;
}
num /= 2;
}
return ans+1;
}
int nextBigNumber(int n)
{
int answer= n+1;
int count = countOne(n);
for(int i = answer; i <= 1000000; i++){
if(count == countOne(i)){
answer = i;
break;
}
}
return answer;
}
int main()
{
int n=78;
//아래는 테스트 출력을 위한 코드입니다.
cout<<nextBigNumber(n);
}
| cs |
: num%2 가 1일 때 ans++
2. nextBigNumber() 함수로 입력받은 n의 1의 개수와 같은 수 찾는다.
: 찾으면 종료
댓글
댓글 쓰기