220. 存在重复元素 III
https://leetcode.cn/problems/contains-duplicate-iii/
难度中等647
给你一个整数数组 nums 和两个整数 k 和 t 。请你判断是否存在 两个不同下标 i 和 j,使得 abs(nums[i] - nums[j]) <= t ,同时又满足 abs(i - j) <= k 。
如果存在则返回 true,不存在返回 false。
示例 1:
输入:nums = [1,2,3,1], k = 3, t = 0 输出:true
示例 2:
输入:nums = [1,0,1,1], k = 1, t = 2 输出:true
示例 3:
输入:nums = [1,5,9,1,5,9], k = 2, t = 3 输出:false
提示:
0 <= nums.length <= 2 * 104-231 <= nums[i] <= 231 - 10 <= k <= 1040 <= t <= 231 - 1
通过次数85,681提交次数293,838
class Solution {
public boolean containsNearbyAlmostDuplicate(int[] nums, int k, int t) {
for(int i=0;i<nums.length;i++)
{
for(int j=i+1;j<nums.length;j++)
{
if(Math.abs(i-j)>k) break;
long x = (long)nums[i]-(long)nums[j];
x = Math.abs(x);
if(x<=t) return true;
}
}
return false;
}
}

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
相关推荐








暂无评论内容