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