본문 바로가기
DEV/알고리즘 문제 풀이

[백준] 2884번 with Python

by krokerdile 2021. 6. 8.

다시 봐야되는 문제 중에 하나인 것 같음. 일단 7번 틀리면서도 정확하게 왜 틀리는 지를 확인 못하면서 푸는 느낌이었던 것 같음. 

temp = input().split()
x = int(temp[0])
y = int(temp[1])

if y == 45:
    print(x, y-45)
else:
    if x == 0:
        print(24-abs(x-1), 60-abs(y-45))
    else:
        print(abs(x-1), 60-abs(y-45))

 처음에 문제 풀 때는 조건 중에 45분 이라는 점에 대해서 너무 어그로가 끌려서 이 조건을 두고 if문을 써가려고 하는 경향이 있었는데, 막상 문제를 풀어보니까 45분이 중요한게 아니고, 시간이 오히려 더 중요 했던 느낌, 그리고 절대값 문항을 잘쓰면 쉽게 문제를 풀 수 있었던 것 같음

temp = input().split()
x = int(temp[0])
y = int(temp[1])

if y > 44:
    print(x, y-45)
elif x == 0:
    print(23, 60-abs(y-45))
else:
    print(abs(x-1), 60-abs(y-45))

그리고 조건문에서 45분이 아니라 그 이하일 경우에를 신경써줘야 되는 것을 깨닫고 조건 하나를 추가하니 문제가 깔끔하게 풀림, 그리고 if/else문 안에 또 if문을 넣는 것이 아니라 간단하게 나눠줘서 한줄에 다 푸는 걸로 바꿔 줄 수 있었음

'DEV > 알고리즘 문제 풀이' 카테고리의 다른 글

[백준] 1712번 손익분기점 with python  (0) 2021.06.27
[백준] 4673번 with Python  (0) 2021.06.16
[백준] 9498, 2753, 14681번 with Python  (0) 2021.06.08
[백준] 1330번 python  (0) 2021.06.08