#20. 백준 2525번 문제 풀이: 오븐 시계 문제 원본 보기
시각이 주어지고, 분이 주어졌을 때 시각에 추가로 주어진 분을 더해서, 시각으로 표시하는 프로그램. 시간은 24시간제. 입력은 첫줄에는 [시간 분], 둘째 줄에는 추가 분 이 주어짐.
입력/출력
--입력--
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 에서 나눗셈 / 는 실수값으로, // 는 정수값으로 계산된다.
code sol.
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로 시간의 나머지 값으로 계산
© 코드솔 - CodeSol. All Rights Reserved.