PTA 7-17 爬动的蠕虫

7-17 爬动的蠕虫(15分)

一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?

这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。

输入格式:

输入在一行中顺序给出3个正整数N、U、D,其中D<U,N不超过100。

输出格式:

在一行中输出蠕虫爬出井的时间,以分钟为单位。

输入样例:

12 3 1

输出样例:

11

题解:

objectivec 复制代码
#include <stdio.h>

int main()
{
    int n = 0, u = 0, d = 0;
    scanf("%d %d %d", &n, &u, &d);
    int sum = 0; // 爬的总路程
    int time = 0; // 所花时间
    while(sum < n)
    {
        time++; // 上爬加1分钟
        sum += u; // 上爬高度
        if(sum < n) // 判断是否爬到井口
        {
            sum -= d;
            time++; // 休息加1分钟
        }
    }
    printf("%d\n",time);

    return 0;
}
相关推荐
重生之我要进大厂18 分钟前
LeetCode 876
java·开发语言·数据结构·算法·leetcode
Amo Xiang34 分钟前
Python 常用模块(四):shutil模块
开发语言·python
Happy鱿鱼1 小时前
C语言-数据结构 有向图拓扑排序TopologicalSort(邻接表存储)
c语言·开发语言·数据结构
KBDYD10101 小时前
C语言--结构体变量和数组的定义、初始化、赋值
c语言·开发语言·数据结构·算法
计算机学姐1 小时前
基于python+django+vue的影视推荐系统
开发语言·vue.js·后端·python·mysql·django·intellij-idea
LWDlwd05251 小时前
shell指令及笔试题
c语言
Crossoads1 小时前
【数据结构】排序算法---桶排序
c语言·开发语言·数据结构·算法·排序算法
扎克begod1 小时前
JAVA并发编程系列(9)CyclicBarrier循环屏障原理分析
java·开发语言·python
自身就是太阳1 小时前
2024蓝桥杯省B好题分析
算法·职场和发展·蓝桥杯
code bean1 小时前
【C#基础】函数传参大总结
服务器·开发语言·c#