Note

[백준] 12. 알람시계 본문

etc/Coding Test

[백준] 12. 알람시계

알 수 없는 사용자 2021. 9. 27. 19:33
728x90

문제 :

45분 일찍 일어나기

첫째 줄에 두 정수 H와 M이 주어진다. (0 ≤ H ≤ 23, 0 ≤ M ≤ 59)

그리고 이것은 현재 상근이가 설정한 놓은 알람 시간 H시 M분을 의미한다.

입력 시간은 24시간 표현을 사용한다. 24시간 표현에서 하루의 시작은 0:0(자정)이고,

끝은 23:59(다음날 자정 1분 전)이다. 시간을 나타낼 때, 불필요한 0은 사용하지 않는다.

 

H,M = map(int,input().split())

if M <= 44:         # 분이 44분보다 작거나 같을때         
  if H == 0 :       # 이중 조건문, H == 0 이면,
    H = 23          # H = 23 입력 (시간은 0에서 23 사이 값을 가진다.)
    M += 60         # M 입력 값에 60을 더해서 입력한다.
  else :            # H == 0 이 아니면
    H -= 1          # H에서 1을 뺀값을 입력한다.
    M += 60         # M 입력 값에 60을 더해서 입력한다.

print(H,M-45)       # 45분 일찍 일어나기 위해 45를 빼고 출력한다.

 

60을 더해주는 이유

  • 예를 들어 15분과 75분(1시간 15분)은 15라는 같은 분침을 나타내기 때문에 더한다.
  • 0에서 60 중 45보다 큰 수가 작은 수에 비해 상대적으로 작기 때문이다.

'etc > Coding Test' 카테고리의 다른 글

[백준] 14. A+B  (0) 2021.09.29
[백준] 13. 구구단  (0) 2021.09.28
[백준] 11. 사분면 고르기  (0) 2021.09.26
[백준] 10. 윤년  (0) 2021.09.25
[백준] 9. 시험 성적  (0) 2021.09.24
Comments