Algorithm/BOJ

[BOJ] 1094 막대기

SolB 2022. 5. 22. 01:56

n=int(input())
stick=64
cnt=0
while n>0:
    if stick>n:
        stick//=2
    else:
        cnt+=1
        n-=stick
print(cnt)

<코드 설명>

먼저 막대 길이 n을 입력 받아주었다. 최장 길이인 64를 stick 변수에 저장해주었다.

stick이 n보다 크면 stick을 절반으로 줄인다. 그렇지 않으면 cnt를 1 늘려주고, n에서 stick만큼의 길이를 빼준다.

이렇게 구한 cnt값을 출력해준다.

 

<실행 결과>