단계별로 풀어보기 2단계 조건문의 6번 문제입니다.
https://www.acmicpc.net/step/4
조건문 단계
점이 어느 사분면에 있는지 알아내는 문제
www.acmicpc.net
풀이를 위해 divmod 함수를 사용했습니다.
divmod(A, B)라고 하면, A를 B로 나눈 몫과 나머지를 반환합니다.
풀이에서처럼 H, M = divmod(C, 60)이라고 하면 H에는 C를 60으로 나눈 몫이, M에는 나머지가 할당됩니다.
코드 자체가 어렵다기보다는 문제에 대해 어떻게 생각하느냐에 따라 난이도, 코드 진행이 결정되는 문제라고 생각합니다.
제 풀이 밑에는 저랑은 약간 다르게 푸신 다른 분의 코드를 첨부해봅니다.
A, B = map(int, input().split())
C = int(input())
H, M = divmod(C, 60)
if A + H < 24 and B + M < 60:
print(A + H, B + M)
elif A + H > 23 and B + M < 60:
print((A + H) % 24, B + M)
elif A + H < 23 and B + M > 60:
print(A + H + 1, B + M - 60)
else:
print((A + H + 1) % 24, B + M -60)
#다른 분의 풀이
H, M = map(int, input().split())
timer = int(input())
H += timer // 60
M += timer % 60
#여기까지는 divmod의 사용여부 정도를 빼고는 동일
if M >= 60:
H += 1
M -= 60
if H >= 24:
H -= 24
#나머지를 사용해주지 않고 빼기를 사용해서 조건문 2개로 끝냄
print(H,M)
'백준 > 2. 조건문' 카테고리의 다른 글
[2480] 주사위 세개 (0) | 2022.07.15 |
---|---|
[2884] 알람 시계 (0) | 2022.07.15 |
[14681] 사분면 고르기 (0) | 2022.07.15 |
[2753] 윤년 (0) | 2022.07.15 |
[9498] 시험 성적 (0) | 2022.07.15 |