天天看點

7-22 龜兔賽跑 (20分)

7-22 龜兔賽跑 (20分)

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

輸入格式:

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

輸出格式:

在一行中輸出比賽的結果:烏龜赢輸出

@[email protected]

,兔子赢輸出

^_^

,平局則輸出

-_-

;後跟1空格,再輸出勝利者跑完的距離。

輸入樣例:

242
           

輸出樣例:

@[email protected] 726
           
//方法一:沒有加速
#include "stdio.h"
#include "math.h"

int main(){
//7-22 龜兔賽跑 (20分)
//烏龜與兔子進行賽跑,跑場是一個矩型跑道,跑道邊可以随地進行休息。烏龜每分鐘可以前進3米,兔子每分鐘前進9米;兔子嫌烏龜跑得慢,覺得肯定能跑赢烏龜,于是,每跑10分鐘回頭看一下烏龜,若發現自己超過烏龜,就在路邊休息,每次休息30分鐘,否則繼續跑10分鐘;而烏龜非常努力,一直跑,不休息。假定烏龜與兔子在同一起點同一時刻開始起跑,請問T分鐘後烏龜和兔子誰跑得快?
//
//輸入格式:
//
//輸入在一行中給出比賽時間T(分鐘)。
// 在一行中輸出比賽的結果:烏龜赢輸出@[email protected],兔子赢輸出^_^,平局則輸出-_-;後跟1空格,再輸出勝利者跑完的距離。
    int T=0,t=0;
    int rabbit=0,tortoise=0;
    
    scanf("%d",&T);
    

    for (; t<T; ) {
        t++;
        rabbit+=9;
        tortoise+=3;
        if (t%10==0) {
            if (rabbit>tortoise) {
                if (t+30<T) {
                    tortoise+=30*3;
                    t+=30;
                    //T-=30;
                }else{
                    tortoise+=(T-t)*3;
                    break;
                }

            }
        }
 
    }
    

    
    if (rabbit>tortoise) {
        printf("^_^ %d",rabbit);
    }else if (rabbit==tortoise){
        printf("-_- %d",rabbit);
    }else{
        printf("@[email protected] %d",tortoise);
    }
    
    
    
    return 0;
    
}


           
7-22 龜兔賽跑 (20分)