leetcode-master/problems/0220.存在重复元素III.md

496 B

class Solution {
public:
    bool containsNearbyAlmostDuplicate(vector<int>& nums, int k, int t) {
        multiset<int> s;
        if(nums.empty() || k==0) return false;
        for(int i=0;i<nums.size();i++){
            if(s.size()>k){
                s.erase(nums[i-k-1]);
            }
            auto index = s.lower_bound(nums[i]-t);
            if(index!=s.end() && abs(*index-nums[i])<=t) return true;
            s.insert(nums[i]);

        }
        return false;
    }
};