题目链接https://www.dotcpp.com/oj/contest4190_problem1.html
题目描述
cqy终于躲过了各种陷阱,打败了各种野怪,找到了宝藏。可是,墓穴里的氧气已经消耗殆尽,原路返回是不可能了。在这危急关头,cqy竟然奇迹般地发现一条密道,这条密道垂直通向地面。不能再犹豫了,cqy必须赶快架起绳索,向上爬出去!!!已知密道深度为a米,cqy白天会向上爬b米,晚上睡觉时会下滑c米,那么cqy需要几天才能爬出密道?
输入
有多行测试数据。对于每行测试数据,有三个整数a、b、c(0<a,b,c<50)。
输出
在一行内输出cqy爬出密道所需要的天数。如果cqy无法爬出密道,则输出“GAME OVER!”,每两组测试数据之间有一个空行。
样例输入
10 5 4 10 5 5
样例输出
6 GAME OVER!
这题假设密道深a米,白天爬b米,晚上下滑c米。如果b<c并且a>b,那么就永远爬不出密道。还有一点要注意就是不能直接用a/(b-c),因为有些情况最后剩余的距离是小于b的,可以直接爬上密道,不需要考虑晚上的下滑。
#include <stdio.h>
int main()
{
int a,b,c,k=0;
while(scanf("%d %d %d",&a,&b,&c)!=EOF)
{
if(a>b) //a代表密道深度 b代表白天爬的高度 c代表晚上下滑的距离
{
if(b<=c)
printf("GAME OVER!\n\n");
else
{
while(a>b)
{
a=a-(b-c);
k++; //计算天数
}
printf("%d\n\n",k+1);
k=0;
}
}
else
{
printf("1\n\n");
}
}
}