백준
백준 2884번 : 알람 시계
reiiiii
2024. 3. 13. 16:30
<내가 처음 작성한 코드 - 오답>
H, M = input().split()
H = int(H)
M = int(M)
if(M - 45 >= 0):
print(H, M)
elif(M - 45 <= 0 and H-1 >= 0):
print(H-1, M-45+60)
elif(M - 45 <= 0 and H-1 < 0):
print(H-1+24, M-45+60)
<지피티가 작성한 코드>
H, M = input().split()
H = int(H)
M = int(M)
if M >= 45:
M -= 45
else:
M += 15
H -= 1
if H < 0:
H = 23
print(H, M)
* 비교 연산자 주의
→ 내가 작성한 코드는 시간과 분을 따로 처리
→ 지피티가 작성한 코드는 시간과 분을 함께 처리
→ 내가 작성한 코드에 H=0이면 24를 더해서 시간을 되돌려야 하는데 이를 고려하지 않음 ***H=0일때를 고려 안 함!!!!!!! 고려 해야함!!!!!!
<정답코드1>
H, M = map(int, input().split())
if M < 45 :
if H == 0 : # 0시이면
H = 23
M += 60
else : # 0시가 아니면(0시보다 크면)
H -= 1
M += 60
print(H, M-45)
<정답코드2>
time = input().split(' ')
h = int(time[0])
m = int(time[1])
if m > 44:
print(h, m-45)
elif m <= 45 and h >= 1:
print(h-1, m + 15)
else: # 만약 h가 0이라면, h는 23
print(23, m + 15)