您的位置:首页 > 其它

蜗牛!快爬!(小学算术问题)

2013-07-10 10:47 176 查看
Problem Description
很久以前有一只蚂蚁,某天在路上走着走着,突然看见了一只蜗牛,爬的很慢。心想自己虽然比它小,可是跑得比它快,于是蚂蚁想跟蜗牛进行一次马拉松比赛,想证明它的实力。蚂蚁跟蜗牛商量后决定在星期六下午进行马拉松比赛。
Theday is coming….比赛跑道为一条直线,Unlucky!!跑道上有很多坑。注意哦,坑!蜗牛想知道它掉下坑底后,爬上来需要多少时间,你的任务是帮忙蜗牛算出它掉入每个坑后,从坑底爬上来的时间,蜗牛每爬半个小时,就得休息半个小时,休息的时候,蜗牛会往下掉一定的深度。坑的深度,往上爬的高度以及休息时往下掉的深度给定。
Input
输入第一行包含一个整数N(0<=N<=1000),表示跑道上坑的数量。
接下来N行,代表N个坑的测试数据,每组测试数据占一行,包含三个整数H、i、j(用一个空格分开),代表坑的深度、往上爬的高度、休息时往下掉的深度。(0<=H、i、j<2^16)
Output
对于每一个坑,输出蜗牛爬上岸所需要的时间(采用进一法,单位:小时)。不能爬上来则输出“Neversee sun!”
Sample Input
2
10 10 0
10 0 0
Sample Output
1
Never see sun!
#include<iostream>
using namespace std;
int main(){
int n;
int h,i,j;
cin>>n;
for(int x=0;x<n;x++){
cin>>h>>i>>j;
if(i<=j){
if(i>=h){cout<<"1"<<endl;}
if(i<h){cout<<"Never see sun!"<<endl;}}

else{
if(i>=h){cout<<"1"<<endl;}
else{ if((h-i)%(i-j)==0){cout<<((h-i)/(i-j)+1)<<endl;}
else{cout<<((h-i)/(i-j)+2)<<endl;}}
}
}
return 0;
}
首先要判断坑的深度和上爬高度的关系,若上爬高度大于深度,一次就可以爬上去,然后再比较上爬高度和下降深度的关系,如果下降大于上爬则“Never see sun!",对于正常数据,则应该先去出最后一次上爬深度在计算需要多少次出坑,在通过是否整除,判断是吧算的数据加一还是二,即可得到最后的数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: