def collatz(num):
answer = 0
while True:
if num%2==0:
num//=2
answer += 1
else:
num=num*3+1
answer+=1
if num==1:break
if answer>=500 and num!=1:
answer=-1
break
return answer
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print(collatz(6))
'알고리즘 문제' 카테고리의 다른 글
Programmers Level 2 가장 긴 팰린드롬 (0) | 2018.01.28 |
---|---|
Programmers Level 2 소수 찾기 (0) | 2018.01.28 |
Programmers Level 2 자연수를 뒤집어 리스트로 만들기 (0) | 2018.01.28 |
Programmers Level 2 하샤드수 (0) | 2018.01.28 |
Programmers Level 2 최솟값 만들기 (0) | 2018.01.28 |