티스토리 뷰
728x90

시간 제한을 못보고 문제 설명만 읽고 단순하게 풀었을 때 로직은 이런식으로 구성했다.

첫날에 나무를 오르고 목표 높이보다 작을경우 하루를 세고 B만큼 미끄러지고... 문제에서 목표 높이에 도달하는 순간 종료를 하기 때문에 Temp가 V와 같아지거나 목표 높이보다 커질 때 탈출하게 작성했지만 시간 초과가 떳다(PyPy3도 마찬가지로)
저 내용을 수식으로 정리를 하게되면 A + (A- B)*(Day) >= V 가 되고 문제에서 알고 싶어하는 것이 Day니까
(Day) >= (V - A) / (A - B) 가 된다. 이 경우에서 Day가 3.4 2.3 이런식으로 나누어 지는 경우에는 하루 더 올라가야 한다. (즉 나눴을 때, 나머지가 있을 경우)

맨 처음 문제 설명만 읽고 단순하게 풀면 기본 예제 수준의 문제였지만, 수식을 만들어서 코드를 간결하고, 시간제한에 맞추기까지 시행착오가 있었던 문제였다.
728x90
'Algorithm' 카테고리의 다른 글
| Hash Table (0) | 2021.07.26 |
|---|---|
| 백준 1629번 곱셈 [Python] (0) | 2021.07.06 |
| 백준 1874번 스택 수열 (0) | 2021.06.09 |
| 스택(Stack), 큐(Queue), 덱 (Deque) (0) | 2021.06.05 |
| 힙 알고리즘 (0) | 2021.06.02 |
