[python 파이썬] 백준 2869번 달팽이는 올라가고 싶다
2021. 4. 22. 00:18ㆍAlgorithm/BOJ
반응형
이 문제는 처음에 아래와 같이 반복문으로 생각하고 풀었다.
a,b,v = map(int,input().split())
sum =0
count=0
while True:
count += 1
sum += a
if sum>=v:
break
sum -= b
print(count)
하지만 시간초과에 걸릴 것 같음을 암시했고 역시 시간초과가 나왔다.
다른 방법을 생각해봤다.
import math
a,b,v = map(int,input().split())
count = (v-b)/(a-b)
print(math.ceil(count))
나눗셈으로 풀면 된다고 생각이 들었다.
다만 나누기를 하되 (v-b)/(a-b) 에서 (v-b)에서 -b 해주었는데 그 이유는 정상에 올라갔을 때 새벽에 아래로 미끄러지는 것을 방지하기 위함이다.
그리고 math 모듈(라이브러리)을 사용했는데 올림하기 위함이다.
4.0은 4일이 걸리는 것이지만 4.2.는 5일이 걸리는 것이기 때문에 올림처리를 해주었다.
반응형
'Algorithm > BOJ' 카테고리의 다른 글
[python 파이썬] 백준 1427번 소트인사이드 (0) | 2021.05.04 |
---|---|
[python 파이썬] 백준 10814번 나이순 정렬 (0) | 2021.05.04 |
[python 파이썬] 백준 7569번 토마토 (0) | 2021.03.15 |
[python 파이썬] 백준 7576번 토마토 (0) | 2021.03.15 |
[python 파이썬] 백준 2583번 영역 구하기 (0) | 2021.03.14 |