簡單描述一下吧,就是說有n塊石頭,起始可以跳到任何一塊上面,接著也是,只不過每一塊石頭只能跳一次,求耗費的最大的體力(計算方法見鏈結)
這道題一看,我們要最大化我們的體力值,說明我們的每一次要盡可能的跳的遠,此時我們就可以採用貪心的思想,把每一次的跳躍體力值最大化,那麼就能得到體力值總和的最大化。
先把序列從小到大排序,因為我們知道,每次要跳的盡可能遠,所以說我們可以第一步先跳到排序後第n個石頭,第二步跳到第1個石頭。
不難發現,這樣的話就是正解。
#includeusing namespace std;
long long m,n,a[1000],ans;
int main()
else
//分兩種情況,每次別忘了記錄下當前在哪
}printf("%lld\n",ans);
}
題解 P4995 跳跳!
說實話這個題我一開始想了好久dfs超時得了30可能因為我太弱了 吃得苦中苦方為人上人現在終於a了當然體會更多 1 首先 這是個真的真的貪心題 貪心思路就是每次都從未跳過得最高的 或最低的 跳到最低處 最高處 這樣差值才最大 2 知道貪心思路了就要寫好 qaq 寫法有很多種,像我這種蒟蒻就只會寫這一種...
貪心 洛谷P4995 跳跳!
洛谷p4996 跳跳!題 目描 述 color題目描述 題目描述 你是乙隻小跳蛙,你特別擅長在各種地方跳來跳去。這一天,你和朋友小 f 一起出去玩耍的時候,遇到了一堆高矮不同的石頭,其中第 i ii塊的石頭高度為h ih i hi 你估計著,從第 i ii 塊石頭跳到第 j jj 塊石頭上耗費的體力...
洛谷 P4995 跳跳! 貪心 2 8
你是乙隻小跳蛙,你特別擅長在各種地方跳來跳去。這一天,你和朋友小 f 一起出去玩耍的時候,遇到了一堆高矮不同的石頭,其中第 ii 塊的石頭高度為 h ihi 地面的高度是 h 0 0h0 0。你估計著,從第 ii 塊石頭跳到第 jj 塊石頭上耗費的體力值為 h i h j 2 hi hj 2,從地面...