训练小组(train)
题目描述
准备从 名同学中选出至少 人组成一个稳定训练小组。
第 名同学的能力值为 。
一个训练小组被称为稳定,当且仅当组内最高能力值和最低能力值之差不超过 。
也就是说,如果小组中最大能力值为 ,最小能力值为 ,则需要满足:
请你求出:
- 最多可以选出多少名同学组成一个稳定训练小组;
- 在人数最多的所有稳定训练小组中,能力值总和最小是多少。
输入格式
第一行包含两个整数 ,表示同学数量和允许的最大能力差。
第二行包含 个整数 ,表示每名同学的能力值。
输出格式
输出一行,包含两个整数,分别表示:
- 稳定训练小组的最多人数;
- 在人数最多的所有稳定训练小组中,最小能力值总和。
输入输出样例 #1
输入 #1
8 3
10 13 12 20 21 22 23 24
输出 #1
4 86
样例解释 #1
可以选择 这 名同学组成训练小组。
此时最高能力值与最低能力值之差为:
满足稳定条件,能力值总和为:
也可以选择:
人数同样为 ,但能力值总和为:
因此在最多人数为 的情况下,最小能力值总和为 。
输入输出样例 #2
输入 #2
5 0
7 7 7 7 7
输出 #2
5 35
样例解释 #2
因为 ,所以训练小组内所有同学的能力值必须完全相同。
这 名同学的能力值都为 ,可以全部选入训练小组。
最多人数为 ,能力值总和为:
数据范围与约定
对于所有测试数据,保证:
$$1 \le n \le 2\times 10^5,\quad 0 \le k \le 10^9,\quad 1 \le a_i \le 10^9 $$| 测试点 | 分值 | 特殊性质 | |||
|---|---|---|---|---|---|
| 无 | |||||
| 无 |
特殊性质 :保证 。
特殊性质 :保证输入的 已经按非递减顺序排列。
京公网安备11010802045784号