C语言 · 龟兔赛跑预测
然而有些比赛相当漫长,全程观看会耗费大量时间,而小华发现只要在每场比赛开始后记录下兔子和乌龟的数据——兔子的速度v1(表示每秒兔子能跑v1米),乌龟的速度v2,以及兔子对应的t,s值,以及赛道的长度l——就能预测出比赛的结果。但是小华很懒,不想通过手工计算推测出比赛的结果,于是他找到了你——清华大学计算机系的高才生——请求帮助,请你写一个程序,对于输入的一场比赛的数据v1,v2,t,s,l,预测该场比赛的结果。
第二行输出一个正整数,表示获胜者(或者双方同时)到达终点所耗费的时间(秒数)。
4
3
4
作者注释:题目废话很多,内容易懂。
注意一下几点:
1:兔子开始睡觉的临界条件;
2:兔子结束睡觉的临界条件;
3:兔子睡觉时,乌龟前进的距离计算:
while(ss--!=0 && gui<l){//若兔子还没有睡醒且乌龟没有到终点时执行
gui=gui+vg;//兔子睡觉s秒乌龟跑的距离为vg*s,每while循环一次过了1秒
time++;//比赛时间在增加
}continue;//结束此次循环进行下一次循环
注意第二行不用乘以时间,因为每while循环一次表过了1秒。
4:兔子醒了后,即时跳出循环,使用continue;//结束此次循环进行下一次循环
代码如下:
/*
T--乌龟获胜
R--兔子获胜
D--两者同时到达终点
*/
#include<stdio.h>
main(){
int vt,vg,t,s,l;
scanf("%d%d%d%d%d",&vt,&vg,&t,&s,&l);
int tu=,gui=;//龟兔跑的路程
int time=;//用的时间
int ss;//用来记录兔子睡觉的时间
while(tu<l && gui<l){//均没有到终点时执行循环
if(tu-gui>=t){//若兔子超过乌龟t米,开始睡觉
ss=s;
while(ss--!= && gui<l){//若兔子还没有睡醒且乌龟没有到终点时执行
gui=gui+vg;//兔子睡觉s秒乌龟跑的距离为vg*s,每while循环一次过了1秒
time++;//比赛时间在增加
}continue;//结束此次循环进行下一次循环
}
gui=gui+vg*;//乌龟跑的距离
tu=tu+vt*;//兔子跑的距离
time++;//比赛时间在增加
} if(tu>=l && gui>=l)
printf("D\n");
else if(tu>=l && gui<l)
printf("R\n");
else
printf("T\n");
printf("%d",time);
}
C语言 · 龟兔赛跑预测的更多相关文章
- 蓝桥杯 基础练习 BASIC-24 龟兔赛跑预测
基础练习 龟兔赛跑预测 时间限制:1.0s 内存限制:512.0MB 问题描述 话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑.于是世界上各 ...
- Java实现 蓝桥杯VIP 基础练习 龟兔赛跑预测
题目描述 话说这个世界上有各种各样的兔子和乌龟,但是 研究发现,所有的兔子和乌龟都有一个共同的特点--喜欢赛跑.于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔 ...
- 问题 1476: [蓝桥杯][基础练习VIP]龟兔赛跑预测 (模拟)
题目链接 题目描述 话说这个世界上有各种各样的兔子和乌龟,但是 研究发现,所有的兔子和乌龟都有一个共同的特点--喜欢赛跑.于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研 ...
- C语言跳水比赛预测结果
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果A选手说:B第二,我第三:B选手说:我第二,E第四:C选手说:我第一,D第二:D选手说:C最后,我第三:E选手说:我第四,A第一:比赛结束后,每 ...
- BASIC-24_蓝桥杯_龟兔赛跑预测
示例代码: #include <stdio.h> int main(void){ int t1 = 0 , t2 = 0 , l1 = 0 , l2 = 0 ; int v1 = 0 , ...
- 基于R语言的时间序列指数模型
时间序列: (或称动态数列)是指将同一统计指标的数值按其发生的时间先后顺序排列而成的数列.时间序列分析的主要目的是根据已有的历史数据对未来进行预测.(百度百科) 主要考虑的因素: 1.长期趋势(Lon ...
- RPA 介绍
一 术语表 机器人流程自动化(RPA):在数字系统中模拟和集成人类行为以优化业务流程的软件机器人.RPA自动化捕获数据.运行应用程序.触发响应并与其他系统通信以执行各种任务. RPA路线图(RPA r ...
- 【NLP】彻底搞懂BERT
# 好久没更新博客了,有时候随手在本上写写,或者Evernote上记记,零零散散的笔记带来零零散散的记忆o(╥﹏╥)o..还是整理到博客上比较有整体性,也方便查阅~ 自google在2018年10月底 ...
- 滴滴AI Labs斩获国际机器翻译大赛中译英方向世界第三
桔妹导读:深耕人工智能领域,致力于探索AI让出行更美好的滴滴AI Labs再次斩获国际大奖,这次获奖的项目是什么呢?一起来看看详细报道吧! 近日,由国际计算语言学协会ACL(The Associati ...
随机推荐
- 深入了解MyBatis参数
参考1 参考2 参考3
- ReentrantLock和synchronized的区别随笔
http://wsmajunfeng.iteye.com/blog/1492316 可重入锁 ReentrantLock 的含义是: 当某个线程获取某个锁后,在未释放锁的情况下,第二次再访问该锁锁定的 ...
- HDUOJ-----2852 KiKi's K-Number(树状数组+二分)
KiKi's K-Number Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...
- 为同一部电脑设置2个IP地址
为同一部电脑设置2个IP地址 在HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans下 点击0000.0001,000 ...
- 自定义类似于listView中Item背景
方法一. drawable/listitem_bk.xml <?xml version="1.0" encoding="utf-8" ?> < ...
- 手动删除Kafka Topic
一.删除Kafka topic 运行./bin/kafka-topics --delete --zookeeper [zookeeper server] --topic [topic name]: ...
- Linux内核jiffies简介
在LINUX的时钟中断中涉及至二个全局变量一个是xtime,它是timeval数据结构变量,另一个则是jiffies,首先看timeval结构struct timeval{time_t tv_sec; ...
- 透析Java本质-谁创建了对象,this是什么
是构造方法创建的对象吗 package com.java.essence_36; import java.util.ArrayList; import java.util.List; /** * Cr ...
- 机器学习(6): 层次聚类 hierarchical clustering
假设有N个待聚类的样本,对于层次聚类来说,步骤: 1.(初始化)把每个样本归为一类,计算每两个类之间的距离,也就是样本与样本之间的相似度: 2.寻找各个类之间最近的两个类, ...
- winfrom 窗口起始位置为屏幕中央
窗口起始位置为屏幕中央 this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; 获取鼠标触发事件光标位置 t ...