小程序员


私信TA

用户名:No01

访问量:78502

签 名:

加油 加油 去北大

等  级
排  名 60
经  验 10999
参赛次数 0
文章发表 82
年  龄 20
在职情况 学生
学  校 河南工院
专  业 物联网

  自我简介:

校学生会干部; 蓝桥杯选手;

解题思路:





注意事项:





参考代码:

/*一旦任一秒结束后兔子发现自己领先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 人评分

  评论区

  • «
  • »