精華區beta Marginalman 關於我們 聯絡資訊
945. Minimum Increment to Make Array Unique 給一個int array: nums,裡面的數字會重複,一動可以把一個nums[i] +1 return幾動可以讓所有數字不重複 絲路: sort後比較 [i] <= [i-1]? yes : [i] = [i-1] +1, ans增加 [i] - [i-1] +1 no : 8888 code: class Solution { public: int minIncrementForUnique(vector<int>& nums) { int ans = 0; int len = nums.size(); sort(nums.begin(), nums.end()); for(int i = 1; i < len; i++) { if(nums[i] <= nums[i-1]) { ans += (nums[i-1] - nums[i]) + 1; nums[i] = nums[i-1] + 1; } } return ans; } }; ---- Sent from BePTT on my iPhone16,1 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.105.208 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1718340065.A.C0A.html
SecondRun: 大師 06/14 12:41
JIWP: 不要用sort 06/14 12:42
EliteCaterpi: 我趕時間 06/14 12:43
JIWP: 你要捲 06/14 12:43
EliteCaterpi: 員工餐廳要休息了 06/14 12:45
JIWP: 上班寫啊 06/14 12:46
EliteCaterpi: 為什麼你有那個美國時間 06/14 12:56