백준 2525번 : 오븐시계 파이썬

태훈입니다·2022년 11월 16일
0

코테 풀이

목록 보기
5/34

정답 코드:

a,b=map(int,input().split())
t=int(input())

a += t // 60
b += t % 60

if b >= 60:
	a += 1
    b -= 60

if a >= 24:
	a -= 24
print(a, b)

코드 풀이:
a,b 와 t 까지 입력 받은 후,
걸린 시간 t ( 분) 은 60으로 나눴을 때 몫이 시간, 나머지가 분이 되기 때문에
각 각 a(시간) b(분)에 더해준다.
ex) t = 90 => 60으로 나누면 몫은 1 나머지는 30 . 즉 a,b가 0시 0분일 때
1시 30분이 된다.

그럼 이제 조건문을 통해서, 예외의 상황에서 어떤 식으로 문제를 해결할 지 생각해야하는데,
위 조건에서 어긋나는 경우는 분이 60분을 넘어가거나 , 60분이거나
앞에 시간이 24을 넘어가는 경우이다.
각각에 조건문을 짜기 전에, b(분)가 60분을 넘어갈 경우를 먼저 조건문을 돌려서, a에 미리 적용시키는 게 맞는 알고리즘이어서

if b >= 60: b가 60분을 넘기거나 같을 때,
a에 + 1을 해주고 b는 -60을 해서 값을 맞췄다.
그 뒤 a(시간)가 24를 넘기거나 같을 때 24를 빼줘서 0시부터 시작 하게 조건문을 통과시킨 뒤
a,b값을 출력하면 정답이 된다!

profile
개발 공부를 하고 있는 비전공자입니다!

0개의 댓글