본문 바로가기
알고리즘 문제 & 프로그래밍/파이썬

[백준 2884번] 알람시계 문제 | 파이썬 if문

by 달슬 2020. 6. 13.
반응형

문제

원래 시간보다 45분 일찍 표시되는 알람시계 만들기

 

ex)

10 10 입력 → 9 25 출력

0 30 입력 23 45 출력

23 40 입력 → 22 55 출력


처음 아이디어

1. 분이 45보다 크거나 같을 때는 그냥 '분-45' 하면 됨

2. 시가 1보다 크고, 분이 45보다 작을때는 '시-1', '분+15' 하면 됨

3. 이제 나머지는 시가 0이고, 분이 45보다 작을 때이므로, '시=23', '분+15' 하면 됨

input_data = input().split(' ')
hour = int(input_data[0])
minute = int(input_data[1])

if minute>=45:
  print(hour, minute-45)

elif hour>=1 and minute<45:
  print(hour-1, minute+15)

else:
  hour=23
  print(hour, minute+15)

다른 아이디어

1. 분이 45보다 크면 따로 건드릴 거 없음

2. '분-45'가 0보다 작으면, '시-1', '분-45+60'하면 됨

3. '시-1'이 0보다 작으면, '시=23'

input_data = input().split(' ')
hour = int(input_data[0])
minute = int(input_data[1])

minute -=45
if minute < 0:
  minute += 60
  hour -=1
  if hour < 0:
    hour = 23

print(hour, minute)
반응형

댓글