[백준] 2869번 : 달팽이는 올라가고 싶다

letsbebrave·2022년 3월 6일
0

codingtest

목록 보기
38/146

문제

개념

math.ceil()

import math를 하고 math.ceil()을 해줘야 계산 결과에 올림이 적용될 수 있다.

시간초과 풀이

부등식의 계산이 이루어지므로 시간초과가 발생한다.
a, b, v가 입력되면 바로 답이 나오는 구조로 변경해야 시간초과가 뜨지 않을 수 있다. 따라서 답을 구할 수 있는 수식을 직접 세우는 것이 중요하다!!

import sys

a, b, v = map(int, sys.stdin.readline().split())
height = 0
day = 0

while True:
    height += a
    day += 1
    if height >= v:
        break
    else:
        height -= b

print(day)

정답 풀이

import sys
import math

a, b, v = map(int, sys.stdin.readline().split())

day = math.ceil((v-a)/(a-b)) + 1

print(day)
profile
그게, 할 수 있다고 믿어야 해

0개의 댓글