C/C++描述 第十一屆藍橋杯省賽C/C++大學B組 第一場(2020.7.5) 試題 C: 跑步訓練 題目+題解

第十一屆藍橋杯省賽C/C++大學B組 第一場

  大家好,我叫亓官劼(qí guān jié ),在CSDN中記錄學習的點滴歷程,時光荏苒,未來可期,加油~博客地址爲:亓官劼的博客

本文原創爲亓官劼,請大家支持原創,部分平臺一直在盜取博主的文章!!!

博主目前僅在CSDN中寫博客,唯一博客更新的地址爲:亓官劼的博客


在這裏插入圖片描述

試題 C: 跑步訓練

本題總分:10 分

【問題描述】

小明要做一個跑步訓練。

初始時,小明充滿體力,體力值計爲 10000。如果小明跑步,每分鐘損耗

600 的體力。如果小明休息,每分鐘增加 300 的體力。體力的損耗和增加都是

均勻變化的。

小明打算跑一分鐘、休息一分鐘、再跑一分鐘、再休息一分鐘……如此循

環。如果某個時刻小明的體力到達 0,他就停止鍛鍊。

請問小明在多久後停止鍛鍊。爲了使答案爲整數,請以秒爲單位輸出答案。

答案中只填寫數,不填寫單位。

【答案提交】

這是一道結果填空題,你只需要算出結果後提交即可。本題的結果爲一個

整數,在提交答案時只填寫這個整數,填寫多餘的內容將無法得分。

試題 C 題解

這裏可以口算:答案爲:3880

10000 / (600-300) == 33.33
33*(600-300) = 9900
10000 - 9900 + 300 = 400 < 600
所以時間爲32*2*60 + 400/10 = 3880

也可以寫程序模擬:

energy = 10000
min = 0
second = 0
while(energy):
    min += 1
    if min % 2 == 1:
        if energy > 600 :
            energy -= 600
        else:
            min -= 1
            second = energy/10
            energy = 0
    else:
        energy += 300
    if energy <= 0:
        break
print(min*60+second)

答案:3380

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章