7-39 龜兔賽跑 (20 分)
烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺;兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘;而烏龜非常努力,一直跑,不休息。假定烏龜與兔子在同一起點同一時刻開始起跑,請問t分鐘後烏龜和兔子誰跑得快?
輸入在一行中給出比賽時間t(分鐘)。
在一行中輸出比賽的結果:烏龜贏輸出@_@
,兔子贏輸出^_^
,平局則輸出-_-
;後跟1空格,再輸出勝利者跑完的距離。
242
@_@ 726
思路:用乙個變數表示輸入時間,兩個變數表示兔子和烏龜的路程。烏龜的路程就是每過一分鐘+4公尺,兔子的路程在跑的狀態每分鐘+10,而兔子他有兩種狀態,跑和休息,我們用兩個變數模擬這種狀態。這題關鍵是如何判斷兔子處於什麼狀態。兔子一開始是跑10分鐘,然後比較和烏龜的距離,比烏龜快就休息30分鐘然後在跑10分鐘,慢就繼續跑10分鐘,然後比較和烏龜的距離……如此迴圈,這樣我們通過判斷兔子狀態就得到了兔子路程。
#include int main ()
if (rest-- == 0) //休息結束繼續跑10分鐘
run = 10;
}//printf("rabbit=%d,turtle=%d\n",rabbit,turtle);
if(turtle > rabbit)
printf("@_@ %d",turtle);
else if (rabbit > turtle)
printf("^_^ %d",rabbit);
else
printf("-_- %d",rabbit);
return 0 ;
}
7 39 龜兔賽跑(20 分)
烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺 兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘 而烏龜非常努力,一直跑,不休息。假定烏龜與兔...
7 39 龜兔賽跑 20分
7 39 龜兔賽跑 20分 思路 簡單模擬龜兔賽跑的過程,由於烏龜是一直跑的,所以對於烏龜所走行程很好求得,因此該題主要是處理兔子跑的過程。不妨設乙個rest和run,其中rest表示兔子休息的時間,run表示兔子跑的時間,再定義乙個觸發器flag,flag為1時表示兔子在休息,flag為0時表示兔...
7 39 龜兔賽跑 20分
題目 烏龜與兔子進行賽跑,跑場是乙個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3公尺,兔子每分鐘前進9公尺 兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘 而烏龜非常努力,一直跑,不休息。假定烏...