꾸준히 합시다
백준 파이썬 2884번: 알람 시계 본문
문제 유형: 수학, 사칙연산
# Solution 1
h, m = map(int, input().split())
new = m - 45
if new < 0:
new += 60
if h == 0:
h = 23
else:
h -= 1
print(h, new)
처음 생각난 대로 푼 것.
h(시간)과 m(분)을 입력받고, 바로 m에 45를 뺀 값을 new라는 변수에 지정해준다.
만약 new가 음수라면 60을 더해주고 시간도 한 시간 전으로 바뀌는 것이기에 h에서 1을 빼준다.
예를 들어 설정해 둔 시간이 10시 10분이라면 현재 시간은 9시 25분이 된다. ( m: 10-45+60=15, h: 10-1 )
설정 시간이 0시 30분이라면 0에 1을 빼준 값인 -1이 시간이 되는 것이 아니라 23으로 바뀌는 것임으로 예외처리해준다.
# Solution 2
h, m = map(int, input().split())
if m > 44:
print(h, m - 45)
elif m < 45 and h > 0:
print(h - 1, m + 15)
else:
print(23, m + 15)
'코딩 테스트 문제 풀이' 카테고리의 다른 글
백준 파이썬 9506번: 약수들의 합 (0) | 2021.03.10 |
---|---|
백준 파이썬 9012번: 괄호 (0) | 2021.03.10 |
백준 파이썬 2588번: 곱셈 (0) | 2021.03.09 |
백준 파이썬 10093번: 숫자 (0) | 2021.03.09 |
백준 파이썬 4344번: 평균은 넘겠지 (0) | 2021.03.08 |
Comments