作者EliteCaterpi (さくらみこ的野性弟弟)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Fri Jun 14 12:41:03 2024
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