알고리즘 문제 & 프로그래밍/파이썬
[백준 2884번] 알람시계 문제 | 파이썬 if문
달슬
2020. 6. 13. 13:15
반응형
문제
원래 시간보다 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)
반응형