列表

详情


NC204859. 组队

描述

你的团队中有  个人,每个人有一个能力值 ,现在需要选择若干个人组成一个团队去参加比赛,由于比赛的规则限制,一个团队里面任意两个人能力的差值必须要小于等于  ,为了让更多的人有参加比赛的机会,你最多能选择多少个人参加比赛?

输入描述

第一行一个整数 ,表示案例组数。

每个案例有两行:

第一行两个正整数  ,表示人的数量。

第二行n个以空格分隔的整数  ,表示每个人的能力值。

输出描述

每个案例输出一行,表示可以参加比赛的最多人数。

示例1

输入:

1
5 3
8 3 5 1 6

输出:

3

说明:

选择能力值为 或者 

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Python3 解法, 执行用时: 991ms, 内存消耗: 37180K, 提交时间: 2023-08-13 15:26:12

t=int(input())
for i in range(t):
    n,k=map(int,input().split())
    a=list(map(int,input().split()))
    a.sort()
    p=0
    mx=0
    for j in range(n):
        while a[j]-a[p]>k:
            p=p+1
        mx=max(mx,j-p+1)
    print(mx)

上一题