내 정답:
def solution(num):
count = 0
while not num == 1 and count < 500:
if num%2:
num = num * 3 + 1
else:
num /= 2
count += 1
return count if count < 500 else -1
다른 사람들의 정답:
def collatz(num):
for i in range(500):
num = num / 2 if num % 2 == 0 else num*3 + 1
if num == 1:
return i + 1
return -1
'프로그래머스 알고리즘 문제 > Level 1' 카테고리의 다른 글
프로그래머스 Level 1 - 실패율 (0) | 2020.08.18 |
---|---|
프로그래머스 Level 1 - 예산 (0) | 2020.08.18 |
프로그래머스 Level 1 - 키패드 누르기 (0) | 2020.08.18 |
프로그래머스 Level 1 - 2016년 (0) | 2020.08.17 |
프로그래머스 Level 1 - 체육복 (0) | 2020.08.17 |