一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
【C语言程序练习|爬动的蠕虫】这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
输入格式:
输入在一行中顺序给出3个正整数N、U、D,其中D
输出格式:
在一行中输出蠕虫爬出井的时间,以分钟为单位。
样例:">输入样例:
12 3 1
输出样例:
11
int main()
{
int N = 0, up = 0, down = 0,distance = 0,time = 0;
scanf("%d %d %d", &N, &up, &down);
do
{
if (!(time % 2))
{
distance += up;
}
else
{
distance -= down;
}
++time;
} while (N > distance);
printf("%d", time);
return 0;
}
推荐阅读
- 算法笔记练习题|(5.6B)n的阶乘
- 蓝桥杯Java真题|19年蓝桥杯Java B组省赛第三题(数列求值)
- Hbu|2-35 判断回文字符串
- 华师oj|2857. 编辑距离
- 蓝桥杯单片机真题|第十三届蓝桥杯单片机省赛模拟题(客观题程序题)
- 13届蓝桥杯夺奖冲刺营|蓝桥杯省赛夺奖冲刺营散列表篇
- 13届蓝桥杯夺奖冲刺营|蓝桥杯省赛夺奖冲刺营贪心算法
- 蓝桥杯单片机|蓝桥杯单片机 省赛 第13届模拟题
- 13届蓝桥杯夺奖冲刺营|蓝桥杯省赛夺奖冲刺营链表篇