做58网站空调维修接单怎么样,遵义网红打卡,韩国比分预测,企业网站排名优化力扣1818.绝对差值和 把nums1拷贝复制一份 去重排序 对于每个nums2都找到差距最小的那个数(二分) 作差求最大可优化差值去重排序可以直接用set 自动去重排序了 const int N 1e97;class Solution {public:int minAbsoluteSumDiff(vectorint nums1, vectori…力扣1818.绝对差值和 把nums1拷贝复制一份 去重排序 对于每个nums2都找到差距最小的那个数(二分) 作差求最大可优化差值去重排序可以直接用set 自动去重排序了 const int N 1e97;class Solution {public:int minAbsoluteSumDiff(vectorint nums1, vectorint nums2) {long long cur 0; //求当前差值和setlong long st;for(int i0;inums1.size();i){cur abs(nums1[i] - nums2[i]);st.insert(nums1[i]);}long long ret cur;for(int i0;inums2.size();i){//set的二分写法 直接调用//找到nums2[i]的第一个数auto ptr st.lower_bound(nums2[i]);//如果没出界if(ptr ! st.end())ret min(ret,cur - (abs(nums1[i] - nums2[i]) - abs(nums2[i] - *ptr)));//如果前面还有一项小的 再比一次if(ptr ! st.begin()){-- ptr;ret min(ret,cur - (abs(nums1[i] - nums2[i]) - abs(nums2[i] - *ptr)));}}return ret%N;}};