1. 程式人生 > >7-39 龜兔賽跑 (20 分)

7-39 龜兔賽跑 (20 分)

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

輸入格式:

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

輸出格式:

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

輸入樣例:

242

輸出樣例:

@[email protected] 726

 思路:由題意不難看出 龜兔賽跑是有周期性的 週期為90分鐘 抓住這個特點 迴圈判斷即可

#include<stdio.h>
int main()
{
	int T;
	scanf("%d",&T);
	int d = T/90;
	int q = T%90;
	 int r;
	 int r1;
	 int w;
	 int w1;
	 if(q>=0&&q<=10){
	 	r1 = 9 *q;
	 	w1 = 3 * q;
	 }
	 if(q>=10&&q<=40){
	 	r1 = 90;
	 	w1 = 3 * q;
	 }
	 if(q>=40&&q<=50){
	 	r1 = 90 + (q - 40)*9;
	 	w1 = 3 * q;
	 }
	 if(q>=50&&q<=80){
	 	r1 = 180;
	 	w1 = 3 * q;
	 }
	 if(q>=80&&q<=90){
	 	r1 = 180 + (q-80)*9;
	 	w1 = 3 * q;
	 }
	 r = 270*d + r1;
	 w = 270*d + w1;
	 if(r > w){
	 	printf("^_^ %d",r);
	 }
	 else if(r < w){
	 	printf("@
[email protected]
%d",w); } else{ printf("-_- %d",r); } return 0; }