当前位置: 代码迷 >> 综合 >> Leetcode 1385. 两个数组间的距离值(DAY 174)---- 二分算法学习期
  详细解决方案

Leetcode 1385. 两个数组间的距离值(DAY 174)---- 二分算法学习期

热度:89   发布时间:2023-11-17 17:25:23.0

文章目录

    • 原题题目
    • 代码实现(首刷自解)


原题题目


在这里插入图片描述


代码实现(首刷自解)


class Solution {
    
public:int findTheDistanceValue(vector<int>& arr1, vector<int>& arr2, int d) {
    int ret = 0;sort(arr2.begin(),arr2.end());for(const auto& num:arr1){
    auto higher_one = upper_bound(arr2.begin(),arr2.end(),num);auto lower_one = lower_bound(arr2.begin(),arr2.end(),num);if((higher_one != arr2.end() && *higher_one - num <= d) || (lower_one != arr2.end() && abs(num - *lower_one) <= d))continue;else{
    if(lower_one == arr2.begin() || abs(num - *(--lower_one) > d)) ++ret;}}return ret;}
};