Python/백준 (BOJ)

[BOJ][B2]헤일스톤 수열 - 3943

ㅋㅋ! 2025. 10. 2. 13:00

https://www.acmicpc.net/problem/3943

문제 전문은 링크 참조

문제가공

입력된 값이

짝수면 나누기 2,

홀수면 (곱하기 * 3 ) + 1

을 1이 나올때 까지 반복하고, 최대값을 출력하자.

코드작성

import sys

def stoneFunc(n):
    if n %2 == 0:
        return n //2 
    else :
        return (n*3)+1

for _ in range(int(sys.stdin.readline())):
    n = int(sys.stdin.readline())
    max = 1
    while n != 1 :
        if max < n : max = n
        n = stoneFunc(n)
    
    print(max)

 

'Python > 백준 (BOJ)' 카테고리의 다른 글

[BOJ][B2]Knitting - 4107  (0) 2025.10.04
[BOJ][B2]Words - 4072  (0) 2025.10.03
[BOJ][B2]애너그램 거리 - 3778  (0) 2025.10.01
[BOJ][B2]iChess - 3602  (0) 2025.09.30
[BOJ][B2]맥주 냉장고 - 3595  (0) 2025.09.29