7-39 龜兔賽跑(20 分)
烏龜與兔子進行賽跑,跑場是一個矩型跑道,跑道邊可以隨地進行休息。烏龜每分鐘可以前進3米,兔子每分鐘前進9米;兔子嫌烏龜跑得慢,覺得肯定能跑贏烏龜,於是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘;而烏龜非常努力,一直跑,不休息。假定烏龜與兔子在同一起點同一時刻開始起跑,請問T分鐘後烏龜和兔子誰跑得快?
輸入格式:
輸入在一行中給出比賽時間T(分鐘)。
輸出格式:
在一行中輸出比賽的結果:烏龜贏輸出@_@
,兔子贏輸出^_^
,平局則輸出-_-
;後跟1空格,再輸出勝利者跑完的距離。
輸入樣例:
242
輸出樣例:
@_@ 726
int main() {
int i,j,t=0,r=0,n,flag=1; //flag用於標識兔子狀態,1爲超過烏龜,j爲兔子休息的時間,r指兔子跑動距離, ,t爲烏龜的
scanf("%d",&n);
for(i=0; i<n; i++) { //持續記錄烏龜跑動距離
t += 3;
if(flag==1) {
r += 9;
if(r>t&&r%10==0) { //滿足條件,兔子休息,進入休息狀態flag=0,休息時間歸零
flag = 0;
j = 0;
}
} else {
j++; //進入休息狀態,記錄時間
if(j==30) { //休息時間滿,改變狀態
flag = 1;
}
}
}
if(r>t) {
printf("%s %d","^_^",r);
} else if (r<t) {
printf("%s %d","@_@",t);
} else {
printf("%s %d","-_-",r);
}
}