精華區beta Marginalman 關於我們 聯絡資訊
題目: 給你一串陣列 你可以對任意三個元素改成任意值 改完之後最大跟最小相差的最小值是多少 思路: 先sort 發現改中間的值沒屁用 然後就可以只改最大最小的 要改成什麼值根本不重要 然後要改大的小的哪邊的呢 其實 把所有情況列出來 發現只有四種 所以直接試試看就可以了 ```cpp class Solution { public: int minDifference(vector<int>& nums) { int len = nums.size(); if(len <= 4)return 0 ; sort(nums.begin(),nums.end()); int l = 0; int r = len-1; int res = INT_MAX; for(int i = 0 ; i < 4 ; i ++) { res = min(res,nums[r-i] - nums[l+3-i]); } return res; } }; ``` -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.25.207 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1719977364.A.E4E.html
wu10200512: 你週賽幾分了 07/03 11:30
oin1104: 174?吧 10%上下 上次周賽2100名左右 大概加個40分 07/03 11:33
JIWP: 大師 07/03 11:41
rainkaras: 大師 07/03 11:46
sustainer123: 大師 07/03 11:51