문제
접근
코드
- C++ 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <vector>
using namespace std;
int solution(int _num) {
long long num = _num;
int answer = 0;
while (1){
if(num == 1){
break;
}
answer++;
if(num % 2 == 0){
num /= 2;
}
else{
num = (num*3) + 1;
}
if(answer == 500){
return -1;
}
}
return answer;
}
- 파이썬 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
def solution(num):
answer = 0
while True:
if num == 1:
break
answer+=1
if num % 2 == 0:
num //= 2
else:
num = (num*3) + 1
if answer == 500:
return -1
return answer