解题思路:
注意事项:
参考代码:
/*一旦任一秒结束后兔子发现自己领先t米或以上,
它们就会停下来休息s秒。对于不同的兔子,t,s的数值是不同的,但是所有的乌龟却是一致——它们不到终点决不停止。
兔子的速度v1(表示每秒兔子能跑v1米),乌龟的速度v2,以及兔子对应的t,s值,以及赛道的长度l——就能预测出比赛的结果。
对于输入的一场比赛的数据v1,v2,t,s,l,预测该场比赛的结果
输入只有一行,包含用空格隔开的五个正整数v1,v2,t,s,l,其中(v1,v2< =100;t< =300;s< =10;l< =10000且为v1,v2的公倍数)
输出包含两行,第一行输出比赛结果——一个大写字母“T”或“R”或“D”,分别表示乌龟获胜,兔子获胜,或者两者同时到达终点。
第二行输出一个正整数,表示获胜者(或者双方同时)到达终点所耗费的时间(秒数)。
输入:
10 5 5 2 20
输出:
D
4 */
#include<stdio.h>
int main()
{
int l1=0,l2=0; //l1:兔子走的距离 l2:乌龟走的距离
int v1,v2,t,s,l;
scanf("%d%d%d%d%d",&v1,&v2,&t,&s,&l);
int i,j,n=0;
for(i=1,j=1;l1<l&&l2<l;j++,i++) // i:乌龟走的秒数;j:兔子走的秒数
{
l1=v1*j;
l2=v2*i;
if(l1-l2>=t&&n==0)
{
n=s;
}
if(n>0)
{
j--;
n--;
}
// printf("%d %d %d\n",i,l1,l2);
}
if(l1==l2||l1>l&&l2>l) printf("D");
else
{
if(l1>l2) printf("R");
if(l1<l2) printf("T");
}
printf("\n%d",--i);
return 0;
}
0.0分
0 人评分
P1002 (C语言代码)浏览:1019 |
兰顿蚂蚁 (C++代码)浏览:1160 |
C语言程序设计教程(第三版)课后习题8.1 (C语言代码)浏览:573 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1267 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:934 |
DNA (C语言代码)浏览:798 |
A+B for Input-Output Practice (II) (C语言代码)浏览:622 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:559 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:852 |
简单的a+b (C语言代码)浏览:672 |