精華區beta Marginalman 關於我們 聯絡資訊
不知道哪一天的 2966. Divide Array Into Arrays With Max Difference 直覺就先排序 而且又確定n被三整除 就conv_size=3, stride=3掃過去 若window裡面最大減最小>k,直接return {}; 因為不管你怎麼換window裡面的member,diff就只會越來越大 若整個掃過都符合diff<=k,則回傳答案 vector<vector<int>> divideArray(vector<int>& nums, int k) { sort(nums.begin(),nums.end()); int n = nums.size(); vector<vector<int>> ans; for(int i=0; i<n; i+=3) { if((nums[i+2]-nums[i]) > k) { return {}; } else { ans.push_back({nums[i],nums[i+1],nums[i+2]}); } } return ans; } 上次刷題好像兩個禮拜前了 換工作好像離我越來越遠 太苦了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.79.4.190 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1707318030.A.CEE.html ※ 編輯: DJYOSHITAKA (42.79.4.190 臺灣), 02/07/2024 23:01:45
ILoveErr: 大師 02/07 23:03