나의 sloution 은 아래와 같다.
class Solution {
public int solution(int N) { // write your code in Java SE 8 int binaryGap =0; int highestGap =0; String binary = Integer.toBinaryString(N); boolean meetOne = false; for(int i=0 ;i< binary.length();i++){ char index = binary.charAt(i); // System.out.println("#### index = "+index); if(index == '1'){ meetOne = true; if(binaryGap > highestGap){ highestGap = binaryGap; } binaryGap = 0; }else if(index == '0'){ if(meetOne){ binaryGap++; } } } return highestGap; } }
100% 이지만 코드는 좀 더 보완이 필요해 보인다.
'프로그래밍 > 알고리즘' 카테고리의 다른 글
시간 복잡도 (0) | 2018.04.21 |
---|---|
[Codility] CountSemiprimes (0) | 2018.04.21 |
[Codility] cyclicRotation (0) | 2018.04.15 |
[Codility] Stone wall (0) | 2018.04.15 |
알고리즘 공부 사이트 (0) | 2017.01.27 |