programming/TIL
[Codility]Iterations_BinaryGap
mimyo_
2020. 8. 26. 21:18
이직준비의 일환으로 알고리즘 연습 시작
소감 1. 2일간 고민하는 자신을 보면서 깜짝 놀랐다... 열심히 해야지 2. 그동안 코딩 습관이 자꾸 나온다. unsigned가 아니지만 숫자에 U를 붙이기 등... |
더보기
나의 해결책
int solution(int N) {
int buf = 0;
int binryGab = 0;
int binryGabMax = 0;
buf = N;
while (buf > 0x00)
{
if ((buf & 0x1) != 0x0)
{
buf = buf >> 1;
while (((buf & 0x1) == 0x0) && (buf > 0x00)) {
binryGab++;
buf = buf >> 1;
}
} else { buf = buf >> 1; }
if (binryGab >= binryGabMax) { binryGabMax = binryGab; }
binryGab = 0;
}
return binryGabMax;
}