반응형
문제 풀이
1. 주어진 시간이 hh:mm 일 때, mm에서 45를 빼준다.
2. 1의 값이 0보다 작은 경우 mm에 60을 더해준 후, hh에서 1을 빼준다.
3. 2 이후 hh가 -1이라면 23으로 바꿔준다.
* 다른 풀이로는 hh를 분으로 바꿔준 후, 45를 빼서 다시 시간과 분으로 바꿔주는 방법이 있다..
(hh * 60 + mm - 45 후 60으로 나눈 몫이 시간, 나머지가 분)
Python Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import sys
def solve(hh,mm):
mm -= 45
if mm < 0 :
mm += 60
hh -= 1
if hh >= 0:
return hh,mm
else :
return 23,mm
else :
return hh,mm
if __name__=='__main__':
hh,mm = map(int,sys.stdin.readline().split())
nh, nm = solve(hh,mm)
print(nh,nm)
|
cs |
문제 링크
2884번: 알람 시계
문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다.
www.acmicpc.net
반응형
'알고리즘 > 백준' 카테고리의 다른 글
백준 1520 내리막 길 (0) | 2020.10.20 |
---|---|
백준 1152 단어의 개수 (0) | 2020.08.31 |
백준 9465 스티커 (0) | 2020.04.18 |
백준 11657 타임머신 / 벨만 포드 알고리즘 (0) | 2020.04.11 |
백준 1002 터렛 (0) | 2020.04.09 |