1주일전에 풀려고 시도했다가 풀지 못해서 1주일이 지난 오늘 다시 풀어봤다:
import sys
a, b, v = map(int, sys.stdin.readline().split())
i = (v-b)/(a-b)
if i == int(i):
print(int(i))
else:
print(int(i)+1)
저번에 틀렸던 이유는 잘못된 수식을 사용해서 틀렸다. 처음에 올라가는 날에는 올라가기만 하고, 잠을 자는 자정이 넘는 시간, 즉 1번째 날 = 올라가기만 함 / 2번째 날 = 미끄러지고 + 다시 올라감 / 3번째 날 = 미끄러지고 + 다시 올라감... 이것을 반복한다. 하지만 잘못 알고 있어서 1번째 날 = 올라가기고 미끄러지고 / 2번째 날 = 올라가기고 미끄러지고 / 3번째 날 = 올라가기고 미끄러지고 이런식인줄 알았다. 따라서 위의 식과 같이 간단하게 풀어준다면 시간초과도 뜨지 않고 알맞게 풀 수 있다.
'알고리즘 테스트 > 백준 문제풀이 및 해설' 카테고리의 다른 글
<백준 문제풀이: 2751번> 파이썬 - 수 정렬하기 2 (0) | 2020.12.06 |
---|---|
<백준 문제풀이: 2750번> 수 정렬하기 (0) | 2020.12.06 |
<백준 문제풀이: 4153번> 파이썬 - 직각삼각형 (0) | 2020.12.05 |
<백준 문제풀이: 9020번> 파이썬 - 골드바흐의 추측 (0) | 2020.12.04 |
<백준 문제풀이: 1436번> 파이썬 - 영화감독 슘 (0) | 2020.12.04 |