左右最值最大差

2021-09-21 15:09:17 字數 563 閱讀 1947

給定乙個長度為n(n>1)的整型陣列a,可以將a劃分成左右兩個部分,左部分a[0..k],右部分a[k+1..n-1],k可以取值的範圍是[0,n-2]。

求這麼多劃分方案中,左部分中的最大值減去右部分最大值的絕對值,最大是多少?

給定整數陣列a和陣列的大小n,請返回題目所求的答案。

測試樣例:

[2,7,3,1,1],5

返回:6

1

class

maxgap

9return max((m-a[0]),(m-a[n-1

]));10}

11 };

分析:假設全域性最大值m在左邊,那我們就希望右邊的最大值越小越好。隨著右邊那個區間的左端點左移,右邊的最大值不會變小,反倒是有可能變大,所以右邊那個區間左端點越靠右越好。同理:最大值m劃分到右邊也類似,要求左邊區間的右端點越靠左越好。所以,前n-1個元素的最大值m和a[0]或a[n-1]的差必然有乙個是解。

**和分析都是網友的貢獻,這裡僅作筆記。

左右最值最大差

題目 給定乙個長度為n n 1 的整型陣列a,可以將a劃分成左右兩個部分,左部分a 0 k 右部分a k 1 n 1 k可以取值的範圍是 0,n 2 求這麼多劃分方案中,左部分中的最大值減去右部分最大值的絕對值,最大是多少?給定整數陣列a和陣列的大小n,請返回題目所求的答案。測試樣例 2,7,3,1...

左右最值最大差

給定乙個長度為n n 1 的整型陣列a,可以將a劃分成左右兩個部分,左部分a 0 k 右部分a k 1 n 1 k可以取值的範圍 0,n 2 求這麼多劃分方案中,左部分中的最大值減去右部分最大值的絕對值,最大是多少?給定整數陣列a和陣列的大小n,請返回題目所求的答案。題目可以理解為,a中的最大元素值...

左右最值最大差

題目詳情 給定乙個長度為n n 1 的整型陣列a,可以將a劃分成左右兩個部分,左部分a 0 k 右部分a k 1 n 1 k可以取值的範圍是 0,n 2 求這麼多劃分方案中,左部分中的最大值減去右部分最大值的絕對值,最大是多少?給定整數陣列a和陣列的大小n,請返回題目所求的答案。分析 要使差值最大,...