乌龟与兔子进行赛跑,跑场是一个矩型跑道,跑道边可以随地进行休息。乌龟每分钟可以前进3米,兔子每分钟前进9米;兔子嫌乌龟跑得慢,觉得肯定能跑赢乌龟,于是,每跑10分钟回头看一下乌龟,若发现自己超过乌龟,就在路边休息,每次休息30分钟,否则继续跑10分钟;而乌龟非常努力,一直跑,不休息。假定乌龟与兔子在同一起点同一时刻开始起跑,请问T分钟后乌龟和兔子谁跑得快? 输入格式: 输入在一行中给出比赛时间T(分钟)。 输出格式: 在一行中输出比赛的结果:乌龟赢输出@_@,兔子赢输出^_^,平局则输出-_-;后跟1空格,再输出胜利者跑完的距离。 输入样例: 242 输出样例: @_@ 726
时间: 2024-02-20 10:59:33 浏览: 132
以下是 Python 代码实现:
```python
T = int(input()) # 比赛时间 T(分钟)
# 乌龟每分钟前进 3 米,兔子每分钟前进 9 米
turtle_distance = 3 * T # 乌龟跑的距离
rabbit_distance = 0 # 兔子跑的距离
rabbit_rest_time = 0 # 兔子已休息的时间
while rabbit_distance < turtle_distance:
rabbit_distance += 9 # 兔子每分钟前进 9 米
if rabbit_distance >= turtle_distance: # 兔子跑完了
print("^_^", rabbit_distance)
break
if rabbit_rest_time == 30: # 兔子休息了 30 分钟
rabbit_rest_time = 0
elif rabbit_rest_time == 0: # 兔子没在休息
if rabbit_distance >= turtle_distance: # 兔子跑完了
print("^_^", rabbit_distance)
break
else: # 兔子没跑完,继续跑
rabbit_rest_time = 1 # 兔子跑了 1 分钟,准备回头看乌龟
else: # 兔子正在休息
rabbit_rest_time += 1 # 兔子休息了 1 分钟
if rabbit_rest_time == 10: # 兔子看了 10 分钟,回头看乌龟
if rabbit_distance - turtle_distance >= 0: # 兔子超过了乌龟
rabbit_rest_time = 1 # 兔子跑了 1 分钟,准备回头看乌龟
else: # 兔子没超过乌龟,开始休息
rabbit_rest_time = 1 # 兔子跑了 1 分钟,准备休息
if rabbit_distance == turtle_distance: # 平局
print("-_-", rabbit_distance)
elif rabbit_distance < turtle_distance: # 乌龟赢
print("@_@", turtle_distance)
```
输入样例:
```
242
```
输出样例:
```
@_@ 726
```
阅读全文