Stay Hungry Stay Foolish

SWEA

[SWEA] 4299. 태혁이의 사랑은 타이밍 (Python/D3)

dev스카이 2024. 11. 4. 16:57

[문제 링크] 👇

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com


풀이

💡약속 시간과 입력받은 시간을 분 단위로 변환하기

 

소개팅 약속 시간인 11일 11시 11분을 분 단위로 변환하고, 입력받은 시간도 분 단위로 변환한 후 비교한다.

입력받은 시간이 약속 시간보다 작으면 약속 시간 이전에 도착한 것이므로 -1 을 출력한다.

약속 시간보다 크면 입력받은 시간에서 약속 시간을 뺀다.

 

Solution

T = int(input())  # 테스트 케이스 수
for test_case in range(1, T + 1):
    D, H, M = map(int, input().split())
    
    # 기준 시간: 2011년 11월 11일 11시 11분을 분 단위로 변환
    base_minutes = (11 * 24 * 60) + (11 * 60) + 11  # 기준 날짜 시간 분
    # 입력받은 시간 (D일 H시 M분)도 분 단위로 변환
    current_minutes = (D * 24 * 60) + (H * 60) + M

    # 경과 시간 계산
    if current_minutes < base_minutes:
        result = -1
    else:
        result = current_minutes - base_minutes
    
    print(f"#{test_case} {result}")

 

 

👩‍💻 회고

조건문으로 다 구분하려니 너무 복잡한 코드가 나왔었다. 그런데 아예 처음부터 분 단위로 변환하고 값을 비교하는 것은 생각도 못했다..