honeyricecake   2년 전

제가 예전에 푼 문제들을 살펴보고 있느데

제가 옛날에 C언어로 푼 코드

int main(void)
{
double V, A, B, x;
scanf("%lf %lf %lf", &A, &B, &V);
x = ceil((V - A) / (A - B)) + 1;
printf("%.0f", x);
}

에 100 99 1을 제출해보니 1이 출력되어야 하는데 -98이 출력됩니다.

이렇듯 A가 B보다 확연히 커서 단순히 (V - A)/(A - B)의 올림에 1을 추가한 값을 출력하면 음수가 나오는 테스트케이스들을 추가하는게 맞지 않을까 싶은데 다들 어떻게 생각하시나요?

jhnah917   2년 전

입력은 1 ≤ B < A ≤ V ≤ 1,000,000,000 를 만족해야 합니다.

honeyricecake   2년 전

헐 부끄럽네요 ㅠㅠ

댓글을 작성하려면 로그인해야 합니다.