프로그래머스 문제풀이/Level 1

콜라츠 추측 (자바, Java)

뮤츠 2022. 12. 23. 00:16

 

하아니 이 간단한게 왜 안되지? 했더니만...연산중 int값이 초과되는 경우가 있었다. long으로 변환해서 풀어줌.

class Solution {
    public int solution(int num) {
        int answer = 0;
        long num2 = (long)num;
        while (num2!=1) {
            if (num2%2==0) {
                num2/=2;
            } else {
                num2 = num2*3+1;
            }
            answer++;
            if (answer>500) {
                return -1;
            }
        }
        return answer;        
    }
}