用Python解「龜兔賽跑」題

2021-10-03 12:01:57 字數 1136 閱讀 8733

烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺;兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘;而烏龜非常努力,一直跑,不休息。假定烏龜與兔子在同一起點同一時刻開始起跑,請問t分鐘後烏龜和兔子誰跑得快?

輸入格式:

輸入在一行中給出比賽時間t(分鐘)。

輸出格式:

在一行中輸出比賽的結果:烏龜贏輸出@@,兔子贏輸出_,平局則輸出--;後跟1空格,再輸出勝利者跑完的距離。

輸入樣例:

輸出樣例:

@_@ 726

因為兔子是先跑十分鐘在看烏龜的情況再決定是否休息,所以需要於烏龜比較。通過分析可知,前十分鐘:兔子跑90m,烏龜跑30m,然後兔子休息三十分鐘;前四十分鐘,兔子90m(休息三十分鐘),烏龜跑120m;前五十分鐘,兔子跑180m,烏龜跑150m,然後兔子休息三十分鐘;前八十分鐘,兔子跑180m(休息六十分鐘),烏龜跑240m;前九十分鐘,兔子跑270m,烏龜跑270m;…可看出九十分鐘乙個週期,兔子只會在0-10,40-50,80-90這三個時間段跑,而烏龜卻一直在跑,則可由此判斷誰是勝利者

t=

int(

input()

)st=

0sw=

0sw=3*t

for i in

range

(t):

if(i%

90>=

0and i%

90<10)

or(i%

90>=

40and i%

90<50)

or(i%

90>=

80and i%

90<90)

: st+=

9if swprint

('^_^ %d'

%st)

elif sw==st:

print

('-_- %d'

%st)

else

:print

('@_@ %d'

%sw)

龜兔賽跑 PAT

原題如下 烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺 兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘 而烏龜非常努力,一直跑,不休息。假...

S 龜兔賽跑

據說在很久很久以前,可憐的兔子經歷了人生中最大的打擊 賽跑輸給烏龜後,心中鬱悶,發誓要報仇雪恨,於是躲進了杭州下沙某農業園臥薪嘗膽潛心修煉,終於練成了絕技,能夠毫不休息得以恆定的速度 vr m s 一直跑。兔子一直想找機會好好得教訓一下烏龜,以雪前恥。最近正值hdu舉辦50周年校慶,社會各大名流齊聚...

7 22 龜兔賽跑

烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺 兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘 而烏龜非常努力,一直跑,不休息。假定烏龜與兔...