카테고리 없음

항해99 리부트코스 알고리즘 3주 4일차 백준 31926 밤양갱

Albosa2lol 2024. 8. 1. 14:35

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

 

def min_time_to_create_song(n):
    # 초기값 설정
    ans = 10  # n이 1일 때 기본적으로 필요한 시간

    # 복사 가능한 크기의 기준점
    cri = 1
    while n >= cri * 2:
        ans += 1
        cri *= 2
    
    return ans

def main():
    import sys
    input = sys.stdin.read
    n = int(input().strip())
    
    result = min_time_to_create_song(n)
    print(result)

if __name__ == "__main__":
    main()

 

달디달디달디달고 단 밤양갱 갱 갱~

 

문자열 daldidalgo가 번 반복된 후 daldidan으로 끝난다.

이진법과 비슷한 방식으로 접근하여 복사 붙여넣기 작업을 효율적으로 수행하여 최소 시간을 찾는 문제.