1300 轉變陣列後最接近目標值的陣列和

2021-10-07 04:46:20 字數 860 閱讀 8958

給你乙個整數陣列 arr 和乙個目標值 target ,請你返回乙個整數 value ,使得將陣列中所有大於 value 的值變成 value 後,陣列的和最接近 target (最接近表示兩者之差的絕對值最小)。

如果有多種使得和最接近 target 的方案,請你返回這些整數中的最小值。

請注意,答案不一定是 arr 中的數字。

示例 1:

輸入:arr = [4,9,3], target = 10

輸出:3

解釋:當選擇 value 為 3 時,陣列會變成 [3, 3, 3],和為 9 ,這是最接近 target 的方案。

示例 2:

輸入:arr = [2,3,5], target = 10

輸出:5

示例 3:

輸入:arr = [60864,25176,27249,21296,20204], target = 56803

輸出:11361

1 <= arr.length <= 10^4

1 <= arr[i], target <= 10^5

通過次數11,834提交次數25,544

class

solution

int n = arr.

size()

;if(n*arr[0]

>=target)

else

}int sumleft = arr[0]

;for

(int i=

1;i++i)

else

break;}

sumleft +

= arr[i];}

return0;

}};

力扣 1300 轉變陣列後最接近目標值的陣列和

給你乙個整數陣列 arr 和乙個目標值 target 請你返回乙個整數 value 使得將陣列中所有大於 value 的值變成 value 後,陣列的和最接近 target 最接近表示兩者之差的絕對值最小 如果有多種使得和最接近 target 的方案,請你返回這些整數中的最小值。請注意,答案不一定是...

轉變陣列後最接近目標值的陣列和

leetcode演算法 演算法題 1.列舉 二分查詢 class solution return ret int findbestvalue vector arr,int target int l 0,r max element arr.begin arr.end 目標陣列中最大值 ans 1 二分...

1755 最接近目標值的子串行和

給你乙個整數陣列 nums 和乙個目標值 goal 你需要從 nums 中選出乙個子串行,使子串行元素總和最接近 goal 也就是說,如果子串行元素和為 sum 你需要 最小化絕對差 abs sum goal 返回 abs sum goal 可能的 最小值 注意,陣列的子串行是通過移除原始陣列中的某...