7-92 爬旗杆 (15分)
作者:互联网
7-92 爬旗杆 (15分)
小C从小很调皮, 调皮的小孩聪明啊。小C的小学有一根金属旗杆, 每天做早操前,小朋友们都要举行升国旗仪式,小C每次看到国旗徐徐上升,边唱国歌、边敬礼、边发呆。一天小C突然想爬到旗杆顶,有想法就要付诸行动。已知旗杆n米高,小C爬行速度为x米/秒,因为旗杆很滑,爬行很费力,小C体力有限,所以每过t秒,要休息2秒, 也因为旗杆滑,不爬行时,小C会从旗杆上滑下来,下滑的速度为y米/秒。
输入格式:
多组测试数据, 每行输入4个整数n x y t。 (1<=n,x,t,y<=1000)
输出格式:
输出小C到达杆顶的时间,精确到秒,如果小C到达不了杆顶,输出-1。每个输出占一行。
输入样例:
在这里给出一组输入。例如:
5 4 4 2
9 4 4 2
输出样例:
在这里给出相应的输出。例如:
2
-1
#include <stdio.h>
#include <math.h>
void fac(int x,int y,int n,int t){
int s=0,T=0;
if(x*t<=2*y&&n>x*t){//无法在时间t内爬上杆,且下滑的距离大于往上爬的距离
printf("-1\n");
}
else{
while(n){
s=s+x;
T++;
if(s<n&&T%t==0){
s=s-2*y;
T=T+2;//下滑,时间增加
}
if(s>=n){
printf("%d\n",T);
break;
}
}
}
}
int main()
{
int n,x,y,t;
while(~scanf("%d%d%d%d",&n,&x,&y,&t)){
fac(x,y,n,t);
}
return 0;
}
标签:旗杆,15,输出,int,爬行,d%,92,输入 来源: https://blog.csdn.net/AQACXHSH/article/details/111995719