题解 | 小红关鸡

小红关鸡

https://www.nowcoder.com/practice/5982b0bfe2fe4ed2a872fd5383271f5f

import sys
input=sys.stdin.readline
n,k=map(int,input().split())
nums=sorted(list(map(int,input().split())))
l=0
ans=0
for r in range(n):
    while nums[r]-nums[l]>k:
        l+=1
    ans=max(ans,r-l+1)
print(ans/n)

一道简简单单的不定长滑动窗口(双指针)题,对鸡窝进行排序枚举右,如果右减左大于k,右移左指针,同时维护最大的可被围住的鸡窝数量

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

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