#20. 백준 2525번 문제 풀이: 오븐 시계 | 문제 원본 보기 |
--입력-- 14 30 20 --출력-- 14 50 --입력-- 17 40 80 --출력-- 19 0 --입력-- 23 48 25 --출력-- 0 13
첫번째 방법은 시각의 분에 추가된 분을 더해서, 시간과 분으로 나누어 시간을 더해주는 방법이 있다. 10 30 에 40분이 추가된다면, 분을 더해주면 10시 70분 > 10시+1시 10분 > 11시 10분 으로 계산한다. 두번째 방법은 시간을 분으로 환산해서 추가된 분을 더해주고, 다시 시각으로 환산하는 방법이다. 10 30 에 40분이 추가된다면 10시*60분=600분+30분+40분= 670분 > 670/60(시간) 670%60(나머지는 분) > 11시 10분이 된다. 두번째 방법이 알고리즘이 간결하기 때문에 두번째 방법으로 코드를 작성해 보자.
Python 에서 나눗셈 / 는 실수값으로, // 는 정수값으로 계산된다.
h, m = map(int, input().split())
# 시간, 분 값을 입력받아 정수로 변환해서 대입.
m2 = int(input()) # 추가 시간(분)을 입력받는다.
hm = h*60 + m; # 시간에 60을 곱해 분으로 환산하고 +분을 더한다.
hm += m2; # 추가 시간을 더한다.
print((hm // 60)%24, hm % 60);
# 전체 분을 60으로 나눈 값은 시간, 나머지 값은 분이 된다.
# 24시간을 넘어가지 않도록 %24로 시간의 나머지 값으로 계산