https://www.acmicpc.net/problem/2869
2869번: 달팽이는 올라가고 싶다
문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 ��
www.acmicpc.net
문제
땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다.
달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다.
달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오.
코드
def check(day):
# day일이 지난 후 도착하는지 체크
if a*day-b*(day-1)>=v:
return True
else:
return False
if __name__=="__main__":
a, b, v=map(int, input().split())
lt=0
rt=v
ans=0
while lt<=rt:
mid=(lt+rt)//2
# 도착한다면 날짜를 더 줄여서 검색
if check(mid)==True:
ans=mid
rt=mid-1
# 도착하지 않는다면 날짜를 더 늘려서 검색
else:
lt=mid+1
print(ans)
728x90
'알고리즘 > 백준' 카테고리의 다른 글
백준 9093번: 단어 뒤집기 (0) | 2020.11.03 |
---|---|
백준 1920번: 수 찾기 (0) | 2020.07.15 |
백준 9466번: 텀 프로젝트 (0) | 2020.05.18 |
백준 2331번: 반복수열 (0) | 2020.05.18 |
백준 10451번: 순열 사이클 (0) | 2020.05.18 |