반응형
    public int solution(long num) {

        for (int i = 1; i < 500; i++ ) {
            num = (num % 2 == 0) ? num / 2 : num * 3 + 1;
            if ( num == 1 )
                return i;
        }

        return -1;
    }

문제는 자체는 쉬운데 3번째 테스트인 626331 에서 488 번째에 계속 리턴 되는 경험을 하게 된다.

연산 도중에 int 형 값을 그대로 사용할 때 문제가 된다.

long으로 바꿔주자.

반응형

WRITTEN BY
데르벨준

,