題目
給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。
示例
例如,給定陣列 nums = [-1,2,1,-4], 和 target = 1.
與 target 最接近的三個數的和為 2. (-1 + 2 + 1 = 2).
思路
最接近的三數之和類似於三數之和等於乙個確定值,思路與三數之和相似,不同的是要給定乙個變數儲存目標值和三數之和的差值,找到最小差值對應的三數之和即為所要的答案。
int
threesumclosest
(vector<
int>
& nums,
int target)
//如果和小於目標值,則使中間值向後移動,使和變大,接近target
if(s < target) l++
;//如果和大於目標值,則使最右值向前移動,使和變小,接近target
else
if(s > target) r--
;//如果和等於目標值,那麼這肯定是最接近的,直接返回target
else
return target;}}
return sum;
}
最接近的三數之和
給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target 最接近的三個數的和為 2.1 2...
最接近的三數之和
給定乙個包括 n 個整數的陣列nums和 乙個目標值target。找出nums中的三個整數,使得它們的和與target最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target 最接近的三個數的和為 2.1 2 1 2 pu...
最接近的三數之和
題目 有點類似三數之和的進化版 給定乙個包括 n 個整數的陣列 nums 和 乙個目標值 target。找出 nums 中的三個整數,使得它們的和與 target 最接近。返回這三個數的和。假定每組輸入只存在唯一答案。例如,給定陣列 nums 1,2,1,4 和 target 1.與 target ...