공부기록/프로그래머스
[프로그래머스] 콜라츠 추측
메델
2023. 8. 29. 19:50
class Solution {
public int solution(long num) {
int answer = 0;
if(num == 1){
answer = 0;
}
while(num != 1){
if(num%2 == 0){
num = num/2;
answer++;
}else{
num = num*3+1;
answer++;
}
if(answer==500){
answer = -1;
break;
}
}
return answer;
}
}
테스트 3에서 오류가 났다면 num*3+1 반복하는 과정에서 int형 범위를 초과할 수 있다는 것을 생각하자.
int형보다 long 타입을 선언하여 오버플로우를 막아주자.