问题描述:一条一英寸的虫在n英寸深的井底。它有足够的能量每分钟爬u英寸,但然后必须休息一分钟再爬。休息时间,它会下滑d英寸。然后重复攀爬和休息的过程。还有多久虫子才会爬出井来?我们总是把一分钟的一部分算作一分钟,如果蠕虫在它爬完的时候刚好到达井的顶部,我们就假设蠕虫爬出来了。
输入:每行包括三个正整数n,u,d。假定d<u,n<100.n=0时结束输入。
输出:每个输入用例需要产生一个整数行,表示蠕虫爬出井所需的分钟数。
#include <iostream>
using namespace std;
int main()
{
int n,u,d;
while(cin>>n>>u>>d)
{
if(n==0)
break;
int temp =u-d;
int time1 = ((n-u)/temp)*2;
int inches = (time1/2)*temp;
int time=time1;
while(n-inches>u)
{
inches+=temp;
time = time1 + 2;
}
time = time+1;
cout<<time<<endl;
}
return 0;
}