給你乙個整數陣列 nums ,和兩個整數 limit 與 goal 。陣列 nums 有一條重要屬性:abs(nums[i]) <= limit 。
返回使陣列元素總和等於 goal 所需要向陣列中新增的 最少元素數量 ,新增元素 不應改變 陣列中 abs(nums[i]) <= limit 這一屬性。
注意,如果 x >= 0 ,那麼 abs(x) 等於 x ;否則,等於 -x 。
示例 1:
輸入:nums = [1,-1,1], limit = 3, goal = -4
輸出:2
解釋:可以將 -2 和 -3 新增到陣列中,陣列的元素總和變為 1 - 1 + 1 - 2 - 3 = -4 。
示例 2:
輸入:nums = [1,-10,9,1], limit = 100, goal = 0
輸出:1
1 <= nums.length <= 105
1 <= limit <= 106
-limit <= nums[i] <= limit
-109 <= goal <= 109
題解:先求和,然後計算(goal-sum)中含有幾個limit。返回值為int,因此+limit-1防止不足limit的部分被捨棄。
本題返回值、計算值超int,使用long long。
#define ll long longclass
solution
sum = abs(goal-sum);
ll ans = int((sum+limit-1)/limit);
return
ans;
}};
計網 基本知識
4 23 與伺服器互動的基本方法 http協議里定了很多與伺服器互動的方法,get,post,put,delete是其中最基本的方法,對應著資料的查,改,增,刪.get與post的不同之處 1.get傳輸資料在url中用?分割,而post則是將資料放在http body中 2.get傳輸資料有大小上...
leetcode 338 位元數計位
給定乙個非負整數 num。對於 0 i num 範圍中的每個數字 i 計算其二進位制數中的 1 的數目並將它們作為陣列返回。示例 1 輸入 2 輸出 0,1,1 示例 2 輸入 5 輸出 0,1,1,2,1,2 高階 思路 對於任意乙個十進位制數來說,有兩種情況。1 奇數,當乙個數為奇數的時候,它對...
LeetCode題解 實現大整數相加(按位計算)
題目 給出兩個很大的整數,要求實現程式求出兩個整數之和 思路 兩個特別大的整數,無法進行直接相加算出結果,則可以拆解成乙個乙個子步驟。按位運算 小學僧列豎式 用陣列儲存即可,陣列的每乙個元素,對應著大整數的每乙個數字。大整數的相加步驟 建立兩個整型陣列,長度為較大整數的位數 1。把每乙個整數倒序儲存...