-코드
from sys import stdin
h, m, s = map(int, stdin.readline().split())
q = int(stdin.readline())
for i in range(q):
time = list(map(int, stdin.readline().split()))
if time[0] == 3:
print(h, m, s)
else:
t = (h * 3600) + (m * 60) + s
if time[0] == 1:
t += time[1]
else:
t -= time[1]
if t < 0:
t += 24 * 3600
t %= 24 * 3600
h = t // 3600
t %= 3600
m = t // 60
s = t % 60
처음에 만들고 입출력을 넣어보니 time[0]에 2를 주었을 때, 값이 이상하게 나와서 그냥 h, m, s를 계산하여 하나의 수로 만든 후 계산을 진행하였습니다. 하지만 0시간 아래가 되었을 때를 고려를 안 해서 다시 넣어주고 넣었으나 틀려서 찾아보니 24시간이 넘었을 경우를 생각을 못해서 다시 해결하여 추가를 하고 시간 초과가 뜬다는 것을 보고 그것도 readline을 이용하여 해결을 하였습니다.
'Beakjoon&프로그래머스 > 파이썬' 카테고리의 다른 글
[백준/파이썬]4562번 No Brainer (0) | 2021.11.11 |
---|---|
[백준/파이썬]4619번 루트 (0) | 2021.11.10 |
[백준/파이썬]17450번 과자 사기 (0) | 2021.11.08 |
[백준/파이썬]11970번 Fence Painting (0) | 2021.11.07 |
[백준/파이썬]23037번 5의 수난 (0) | 2021.11.06 |