守望者的逃離 貪心

2022-08-30 02:21:10 字數 1117 閱讀 4380

惡魔獵手尤迪安野心勃勃,他背叛了暗夜精靈,率領深藏在海底的娜迦族企圖叛變。守望者在與尤迪安的交鋒中遭遇了圍殺,被困在乙個荒蕪的大島上。為了殺死守望者,尤迪安開始對這個荒島施咒,這座島很快就會沉下去。到那時,島上的所有人都會遇難。守望者的跑步速度為17m/s,以這樣的速度是無法逃離荒島的。慶幸的是守望者擁有閃爍法術,可在1s內移動60m,不過每次使用閃爍法術都會消耗魔法值10點。守望者的魔法值恢復的速度為4點/s,只有處在原地休息狀態時才能恢復。 現在已知守望者的魔法初值m,他所在的初始位置與島的出口之間的距離s,島沉沒的時間t。你的任務是寫乙個程式幫助守望者計算如何在最短的時間內逃離荒島,若不能逃出,則輸出守望者在剩下的時間內能走的最遠距離。注意:守望者跑步、閃爍或休息活動均以秒(s)為單位,且每次活動的持續時間為整數秒。距離的單位為公尺(m)。

【輸入格式】空格隔開的三個非負整數m, s, t。

【輸出格式】 第1行為字串「yes」或「no」,即守望者是否能逃離荒島。 第2行包含乙個整數。第一行為「yes"時表示守望者逃離荒島的最短時間;第一行為「no」時表示守望者能走的最遠距離。

#include //

引數分別為魔法,距離,時間,能都成逃脫,花費的時間或者最短時間

void run(int magic,int distant,int time,bool &canrun,int &timeordistant)

} //用盡魔法剛好逃脫

if(nowdistant>=distant)

//嘗試是原地休息還是跑

int temptime=remainingtime;

while(--temptime>0

)

//否則原地停一秒

else

nowmagic+=4

;

if((nowmagic)/10

) }}

//回覆不了10點魔法,剩餘的時間全部跑

while(remainingtime--)

}//死定了

canrun=false

; timeordistant=nowdistant;

}int

main()

return0;

}

view code

守望者的逃離(貪心)

題目描述 惡魔獵手尤迪安野心勃勃,他背叛了暗夜精靈,率領深藏在海底的娜迦族企圖叛變。守望者在與尤迪安的交鋒中遭遇了圍殺,被困在乙個荒蕪的大島上。為了殺死守望者,尤迪安開始對這個荒島施咒,這座島很快就會沉下去。到那時,島上的所有人都會遇難。守望者的跑步速度為17m s,以這樣的速度是無法逃離荒島的。慶...

守望者的逃離 (貪心)

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 題目描述 惡魔獵手尤迪安野心勃勃,他背叛了暗夜精靈,率領深藏在海底的娜迦族企圖叛變。守望者在與尤迪安的交鋒中遭遇了圍殺,被困在乙個荒蕪的大島上。為了殺死守望者,尤迪...

守望者的逃離

前言 送你破鍵盤,廉價發打字聲依稀。送你破電腦,便宜的讓你去做題。一本藍皮書一直沒落任能回味,那套高質量題 歡迎來到嘟嘟課堂。今天,嘟嘟老師要講一道看起來很難,實際卻很簡單的題 守望者的逃離。題目描述 惡魔獵手尤迫安野心勃勃.他背叛了暗夜精靈,率深藏在海底的那加企圖叛變 守望者在與尤迪安的交鋒中遭遇...