728x90
반응형
문제
반응형
풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
class Solution {
public int solution(int num) {
long n = num; //숫자가 커질수 있으니 long으로 변환
int answer = 0;
if(n == 1) { //먼저 n이 1일 경우를 잡음
return 0;
}
while (n != 1) { //n이 1이 될때까지 while을 돌림
if (n % 2 == 0) { //n이 짝수일경우
n /= 2;
} else { //n이 홀수일경우
n *= 3;
n += 1;
}
answer++; //answer에 카운트
if (answer == 501) { //answer가 500을 넘어가면
break; //더이상 반복문 돌릴 필요가 없음
}
}
if(answer<501) {
return answer;
}else{
return -1;
}
}
}
|
cs |
728x90
반응형
'[JAVA] 프로그래머스 스쿨 > JAVA Lv.1' 카테고리의 다른 글
[프로그래머스/Java] Lv.1 하샤드 수 (0) | 2023.01.15 |
---|---|
[프로그래머스/Java] Lv.1 평균 구하기 (0) | 2023.01.14 |
[프로그래머스/Java] Lv.1 최대공약수와 최소공배수 (0) | 2023.01.13 |
[프로그래머스/Java] Lv.1 짝수와 홀수 (0) | 2023.01.13 |
[프로그래머스/Java] Lv.1 제일 작은 수 제거하기 (0) | 2023.01.13 |