猥琐大叔


私信TA

用户名:suffocate

访问量:1340

签 名:

等  级
排  名 36724
经  验 417
参赛次数 0
文章发表 2
年  龄 0
在职情况 学生
学  校 太原理工大学
专  业 物联网工程

  自我简介:

解题思路:  主要是分类讨论的思想

注意事项:


参考代码:

#include<iostream>
using namespace std;
//主要运用分类讨论的思想
int main(){
 int v1,v2,t,s,l,s1=0,s2=0,time=0,resttime;    //s1,s2表示兔子和乌龟的路程
 bool run=true;
 cin>>v1>>v2>>t>>s>>l;
 while(!(s1==l||s2==l)){                               //因为l是v1和v2的公倍数,直接判断是否相等,即判断比赛是否结束
   time++;                                  //总时间+1
   if(run){                                   //如果兔子在跑
           if(s1-s2>=t) {                                   //满足休息的条件修改run为false并置resttime为1
                run=false;
                resttime=1;
             }
           else s1+=v1;                                  //不满足继续跑
          }
  else{                                      //兔子不在跑
           if(resttime==s){                             //休息时间到了,继续跑并修改run为true
                    s1+=v1;
                    run=true;
               }
           else     resttime++;                        //休息时间没到继续休息
        }
  s2+=v2;                                 //乌龟开始跑
 }

 if(s1==l&&s2==l) cout<<'D';                    //同时到达终点
 else if(s1==l) cout<<'R';                          //兔子到达终点
 else cout<<'T';                                        //乌龟到达终点
 cout<<endl<<time<<endl;                      //总时间
}


 

0.0分

1 人评分

  评论区

  • «
  • »