自由小學有一道年代久遠的磚牆,因為有一部分的磚塊脫落,造成牆的高度高低不一,新任校長看到這個情況,希望將這道牆做個簡單的修補,讓牆凹凸的部分不那麼明顯。
他的做法是,針對每個凸點,也就是這個點同時比左右兩邊來得高的,把上面的磚塊拿掉,直到跟左右兩邊比較高的那個一樣高。取下來的磚塊則是拿去填補凹點,也就是這個點同時比左右兩邊來得低的,將這個點的高度填到跟左右兩邊比較低的那個一樣高。另外,牆的左、右兩端點是不用處理的。
由於這道磚牆很長,所以請你幫忙計算,經過上述處理,最後剩餘幾個磚塊或是不足幾個磚塊?
輸入資料的第一行有一個正整數N (3<=N<=10000),代表這道磚牆的長度。第二行有N個正整數Ai (1<=Ai<=10000),代表這個點的高度,也就是由幾個磚塊組成。
請輸出一個整數,代表以上述方式處理完,剩餘的磚塊數,當磚塊數不足時,請以負整數表示。
3 1 2 1
1
5 3 1 4 5 2
-1
範例說明:
以範例2來說,凸點只有第4點,高度為5,要調整到跟左邊4一樣的高度,故取走1個磚塊,而凹點也只有第2點,高度為1,調整到跟左邊3一樣的高度,故需要2個磚塊,因此1-2=-1,不足一個磚塊。
另外,判斷凹凸點時,請以一開始的高度判斷,而不是一邊填補一邊判斷,例如 1 5 1 5 1,兩個5都是凸點,而中間的1為凹點。
評分說明:
本題共有三個子題,分數及條件限制如下:
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」 |