본문 바로가기
Algorithm

[구현/수학] 백준 1408 24 - 파이썬(Python)

by jangThang 2022. 11. 9.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    1408번: 24

    도현이는 Counter Terror Unit (CTU)에서 일하는 특수요원이다. 도현이는 모든 사건을 정확하게 24시간이 되는 순간 해결하는 것으로 유명하다. 도현이는 1시간 만에 범인을 잡을 수 있어도 잡지 않는

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     단순히 시간을 계산하는 문제입니다. 하지만 의외로 시간 계산이 까다로울 수 있어요. 특히 시간은 24진법, 분과 초는 60진법이기 때문에 혼동이 올 수 있어요.

     이럴 때는 시간과 분, 초를 따로 따로 계산하는 것보다 '초'로 환산해서 계산하는 게 더 간단할 수 있습니다.

     

     

     

    3. 코드

    # 입력
    current_time = list(map(int, input().split(':')))
    start_time = list(map(int, input().split(':')))
    
    # 필요한 시간
    current_sec = current_time[0]*3600 + current_time[1]*60 + current_time[2]
    start_sec = start_time[0]*3600 + start_time[1]*60 + start_time[2]
    res = start_sec - current_sec
    
    # 만약 다음날이면 하루만큼 시간 더해주기
    if res < 0:
        res += 24*3600
    
    # 시간 환산 후 출력
    print(f"{res//3600:02d}:{(res%3600)//60:02d}:{res%60:02d}")

     출력 포멧도 살짝 까다로운 편입니다. '02d' 출력형식으로 자릿수가 빌 경우에는 0을 채워줘야 합니다.

     

    star가 되고나서 Tistory

    반응형

    댓글