http://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=2078
這題先依序找出最大值放入陣列arr_large,另外再從尾找出最大值 和arr_large比看誰最小減去目前的坑洞高 若結果小於0就不做相加到ans反之
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scn = new Scanner(System.in);
int n=scn.nextInt(),arr[]=new int [n],arr_large[]=new int [n],ans=0,max=0;
for(int i=0;i<n;i++){
arr[i]=scn.nextInt();
if(arr[i]>max)
max=arr[i];
arr_large[i]=max;
}
max=0;
for(int i=n-1;i>=0;i--){
if(arr[i]>max)
max=arr[i];
int num=Math.min(max,arr_large[i])-arr[i];
if(num<0)
num=0;
ans+=num;
}
System.out.println(ans);
}
/*題目:[C_CH13-中] 坑洞路面
作者:1010
時間:西元 2016 年 10 月 */
}