C语言PTA题目:7-5 2025 积极向上的小青蛇

题目:

一只1英才长的小青蛇在一口深n英寸的井底。它有足够的力气完成每分钟向上爬u英寸,但必须休息1分钟才能继续爬。在休息的过程中,小青蛇又下滑了d英寸。这样上爬和下滑的过程重复进行着。小青蛇需要多长时间才能爬出井?在此,不足一分钟按一分钟计,并且假定只要在某次上爬过程中小青蛇的头部到达了井的顶部,那么小青蛇就完成任务了。

输入格式:

输入文件包括多组测试数据。每组占一行,为3个正整数n,u,d,其中n是井的深度,u是小青蛇每分钟上爬的距离,d是小青蛇在休息的过程中下滑的距离。假定d< u,n < 100。n=0表示输入数据结束。

输出格式:

对输入文件中的每组测试数据,输出一个整数,表示小青蛇爬出井所需要的时间(分钟,不足1分钟按1分钟计算)。

输入样例:

10 2 1
20 3 1
0 0 0

输出样例:

17
19

解题代码:

#include <stdio.h>
int main()
{
    int n,u,d,sum;
    while(~scanf("%d %d %d",&n,&u,&d))
    {
        sum=0;
        if(n==0) break;
        for(;;)
        {
            n-=u;
            sum++;
            if(n<=0) break;
            else
            {
                n+=d;
                sum++;
            }
        }
        printf("%d\n",sum);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_63249578/article/details/128532600