본문 바로가기

알고리즘 문제풀이

백준 2869 달팽이는 올라가고 싶다 Python 수학 브론즈1

시간초과 문제가 있음

a,b,v = map(int,input().split())

if (v-b) % (a-b) == 0: # 딱떨어진다면
    print((v-b) // (a-b) )
else:
    print((v-b ) // (a - b) + 1)

100 99 1000000000 예제로 했을 때 시간초과 나오는 것이 예상됨

sum_v = 0
day = 0
while sum_v < v:
    sum_v += a
    day += 1
    if sum_v >= v:
        break
    sum_v -= b
print(day+1)
while True:
    result = v-a
    result -= (a+b)
    day += 1
    if result <= 0:
        break
print(result)