開(kāi)發(fā)高端網(wǎng)站開(kāi)發(fā)哈爾濱企業(yè)網(wǎng)站seo
OD統(tǒng)一考試
分值: 200分
題解: Java / Python / C++
題目描述
攀登者喜歡尋找各種地圖,并且嘗試攀登到最高的山峰。
地圖表示為一維數(shù)組,數(shù)組的索引代表水平位置,數(shù)組的元素代表相對(duì)海拔高度。其中數(shù)組元素0代表地面。
例如:[0,1,2,4,3,1,0,0,1,2,3,1,2,1,0],代表如下圖所示的地圖,地圖中有兩個(gè)山脈位置分別為 1,2,3,4,5 和 8,9,10,11,12,13,最高峰高度分別為 4,3。最高峰位置分別為3,10。
一個(gè)山脈可能有多座山峰(高度大于相鄰位置的高度,或在地圖邊界且高度大于相鄰的高度)。
登山時(shí)會(huì)消耗登山者的體力(整數(shù)),
- 上山時(shí),消耗相鄰高度差兩倍的體力
- 下山時(shí),消耗相鄰高度差一倍的體力
- 平地不消耗體力
登山者體力消耗到零時(shí)會(huì)有生命危險(xiǎn)。
例如,上圖所示的山峰:
- 從索引0,走到索引1,高度差為1,需要消耗 2 * 1 = 2 的體力,
- 從索引2,走到索引3?