코딩테스트/프로그래머스
[레벨 2] 다음 큰 숫자
marmelo12
2021. 9. 27. 17:28
반응형
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 0;
int nCount = 0,nextNumCount = 0;
int temp = n,nextNum = n;
while(temp > 0)
{
if(temp % 2 == 1)
++nCount;
temp /= 2;
}
int i = 0;
while(true)
{
if(nCount == nextNumCount)
{
answer = nextNum;
break;
}
else
nextNumCount = 0;
nextNum++;
temp = nextNum;
while(temp > 0)
{
if(temp % 2 == 1)
++nextNumCount;
temp /= 2;
}
++i;
}
return answer;
}
반응형