하아니 이 간단한게 왜 안되지? 했더니만...연산중 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; } }