题解 | #相差不超过k的最多数#

相差不超过k的最多数

https://www.nowcoder.com/practice/562630ca90ac40ce89443c91060574c6

def max_numbers_with_difference_k(nums, k):
    nums.sort()  # 先对数组进行排序
    count = 1
    left, right = 0, 1

    while right < len(nums):
        # 判断右边界元素与左边界元素的差值是否超过 k
        if nums[right] - nums[left] <= k:
            # 没超过 k,则右边界右移
            right += 1
            # 更新最大选择数目的记录
            count = max(count, right - left)
        else:
            # 超过了 k,则左边界右移
            left += 1

    return count


# 示例调用
n, k = map(int, input().split())
nums = list(map(int, input().split()))
print(max_numbers_with_difference_k(nums, k))

全部评论

相关推荐

投递地平线等公司10个岗位
点赞 评论 收藏
分享
温州头等大孝子:你们的确很幸福,但是有一个小问题:谁问你了?我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了
字节跳动开奖364人在聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务