24小时热门版块排行榜    

查看: 1615  |  回复: 2

sc1314

新虫 (初入文坛)

[求助] C语言高手请进,龟兔赛跑的问题!

龟兔赛跑预测
问题描述
话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑。于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔子和乌龟的赛跑。他发现,兔子虽然跑比乌龟快,但它们有众所周知的毛病——骄傲且懒惰,于是在与乌龟的比赛中,一旦任一秒结束后兔子发现自己领先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”,分别表示乌龟获胜,兔子获胜,或者两者同时到达终点。 第二行输出一个正整数,表示获胜者(或者双方同时)到达终点所耗费的时间(秒数)。

样例输入
Sample 1
10 5 5 2 20

Sample2
10 5 5 1 20

Sample3
10 5 5 3 20

样例输出
Sample1
D
4

Sample2
R
3

Sample3
T
4
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

capital_j

木虫 (小有名气)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jjdg: 金币+2, 感谢应助 2012-04-02 03:36:29
#include
using namespace std;

void func(int rubspeed,int turspeed,int t,int s,int l,int a[])
{
    int sleeptime = 0;
    a[0]=a[1]=a[2]=0;
    while(1)
    {
        if(sleeptime){
            sleeptime--;
        }
        else {
            if(a[1]-a[2]>=t) sleeptime = s-1;
            else a[1]+=rubspeed;
        }
        a[2]+=turspeed;
        a[0]++;
        if(a[1]>=l || a[2]>=l) return;
   }
}
int main()
{
    int a1=10,a2=5,a3=5,a4=2,a5=20;
    int a[3]={0,0,0};//记录到达终点时a[0]时间 a[1]兔子已跑 a[2]乌龟已跑
    while(a1)
    {
        cin>>a1>>a2>>a3>>a4>>a5;
        func(a1,a2,a3,a4,a5,a);
        if(a[1]>=a5 && a[2]>=a5) cout<<"D";
        else{
            if(a[2]>=a5) cout<<"T";
            if(a[1]>=a5) cout<<"R";
        }
        cout<     }
    return 0;
}
验证,已通过
懒得改成c语言了,你主要看看思路。(也就是include和输出有点异样)
有些誓言,说了就不起作用了。有的人,见了却没有感觉了了。珍惜现在每一秒,不苛求将来。
2楼2012-04-01 22:28:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

emanlee

木虫 (小有名气)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
jjdg: 金币+3, 感谢应助 2012-04-04 00:26:06
jjdg: 编辑内容 2012-04-04 00:26
jjdg: 编辑内容 2012-04-04 00:26
jjdg: 编辑内容 2012-04-04 00:26
以下为C语言版本:

#include "stdio.h"


void func(int rubspeed,int turspeed,int t,int s,int l,int a[])
{
    int sleeptime = 0;
    a[0]=a[1]=a[2]=0;
    while(1)
    {
        if(sleeptime){
            sleeptime--;
        }
        else {
            if(a[1]-a[2]>=t) sleeptime = s-1;
            else a[1]+=rubspeed;
        }
        a[2]+=turspeed;
        a[0]++;
        if(a[1]>=l || a[2]>=l) return;
   }
}
int main()
{
    int a1=10,a2=5,a3=5,a4=2,a5=20;
    int a[3]={0,0,0};/*记录到达终点时a[0]时间 a[1]兔子已跑 a[2]乌龟已跑 */
    while(a1)
    {
        
                scanf("%d%d%d%d%d",a1,a2,a3,a4,a5);
        func(a1,a2,a3,a4,a5,a);
        if(a[1]>=a5 && a[2]>=a5) printf("D" );
        else{
            if(a[2]>=a5) printf("T" );
            if(a[1]>=a5) printf("R" );
        }
        printf("\n%d\n",a[0]);

    }
    return 0;
}

[ Last edited by jjdg on 2012-4-4 at 00:26 ]
3楼2012-04-03 08:39:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sc1314 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 国基金的申报应该改成非等额制,评价高的钱多评价低的钱少,但是增加资助率 +7 a089 2026-08-07 7/350 2026-08-08 18:05 by gltch
[基金申请] 好奇怪的filecode +3 布布和一二 2026-08-08 4/200 2026-08-08 17:46 by zhanghaozhu
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 17:22 by oEVWOejN9taj
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 17:19 by oEVWOejN9taj
[论文投稿] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 16:47 by oEVWOejN9taj
[考博] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 16:27 by oEVWOejN9taj
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 Vi50GxzrFcSG 2026-08-07 4/200 2026-08-08 16:22 by oEVWOejN9taj
[论文投稿] 十年后又回来了,论文投稿求助 +5 哈哈114477 2026-08-01 5/250 2026-08-08 15:14 by 仁砚薪传
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 WQyTGMbfH7Cx 2026-08-07 4/200 2026-08-08 15:02 by oEVWOejN9taj
[基金申请] fileCode有新解读? +9 Tide man 2026-08-08 17/850 2026-08-08 14:56 by archvillain
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 14:27 by oEVWOejN9taj
[论文投稿] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 KXLV3nuBVBY7 2026-08-07 6/300 2026-08-08 14:01 by oEVWOejN9taj
[基金申请] 关于代码变化问题,想知道的进来 +11 且听虎啸 2026-08-07 14/700 2026-08-08 12:50 by 布布和一二
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 娱乐 +6 Tide man 2026-08-03 6/300 2026-08-07 22:40 by 铁帽子农民
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +9 archvillain 2026-08-04 11/550 2026-08-05 20:06 by wlwhappy
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
信息提示
请填处理意见