티스토리 뷰


이것보다 더 나은 코드가 있을지 생각해보았는데 아직 공부가 부족해 더 이상 생각나지 않는다.

문제풀이

def collatz(num):
    cnt = 0
    answer = num
    while cnt < 500:
        if answer % 2 == 1:
            answer = answer * 3 + 1
            cnt += 1
            if answer == 1:
                return cnt
        else:
            answer //= 2
            cnt += 1
            if answer == 1:
                return cnt
    return -1

# 아래는 테스트로 출력해 보기 위한 코드입니다.
print(collatz(6))


댓글
«   2025/10   »
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 30 31
Total
Today
Yesterday