您的位置:首页 > 其它

Climbing Worm

2015-05-31 14:52 309 查看

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 14065 Accepted Submission(s): 9500



[align=left]Problem Description[/align]
An inch worm is at the bottom of a well n inches deep. It has enough energy to climb u inches every minute, but then has to rest a minute before
climbing again. During the rest, it slips down d inches. The process of climbing and resting then repeats. How long before the worm climbs out of the well? We'll always count a portion of a minute as a whole minute and if the worm just reaches the top of the
well at the end of its climbing, we'll assume the worm makes it out.

[align=left]Input[/align]
There will be multiple problem instances. Each line will contain 3 positive integers n, u and d. These give the values mentioned in the paragraph
above. Furthermore, you may assume d < u and n < 100. A value of n = 0 indicates end of output.

[align=left]Output[/align]
Each input instance should generate a single integer on a line, indicating the number of minutes it takes for the worm to climb out of the well.

[align=left]Sample Input[/align]

10 2 1
20 3 1
0 0 0


[align=left]Sample Output[/align]

17
19


#include<stdio.h>

main()

{

int n,u,b,i,m;

while(scanf("%d%d%d",&n,&u,&b)!=EOF)

{

m=0;

if(n==0&&u==0&&b==0)

break;

else

for(i=0;i<=n;)

{

i=i+u,m++;

if(i>=n)

break;

i=i-b,m++;

}

printf("%d\n",m);

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: