#PD019C. 选拔小队 (team)
选拔小队 (team)
选拔小队 (team)
- 输入:
team.in - 输出:
team.out - 时间限制:
1 s - 内存限制:
128 MB
题目描述
信息学训练营中共有 名同学,第 名同学的能力值为 。
教练希望从中选出恰好 名同学组成一支小队。一支小队被认为是优秀小队,当且仅当满足以下条件:
- 小队中恰好有 名同学。
- 小队中任意两名同学的能力值都不相同。
- 小队中任意两名同学的能力值之差的绝对值严格小于 。
两支小队被认为不同,当且仅当被选中的同学集合不同。
请你计算一共有多少支不同的优秀小队。由于答案可能很大,请对 取模。
输入格式
从文件 team.in 中读入数据。
第一行包含两个整数 。
第二行包含 个整数 ,表示每名同学的能力值。
输出格式
输出到文件 team.out 中。
输出一个整数,表示优秀小队的数量对 取模后的结果。
样例1输入
5 3
4 2 2 3 6
样例1输出
2
样例1解释
需要选出 名同学,且能力值互不相同。
能力值为 的三名同学可以组成优秀小队,因为三个能力值互不相同,且最大能力值与最小能力值之差为 ,严格小于 。
由于能力值为 的同学有两名,因此可以分别选择其中一人,与能力值为 和 的同学组成小队,共有 种方案。
能力值包含 的选择均不满足条件,因此答案为 。
数据范围
对于所有数据,,。每个测试点 分。
特殊性质 A:保证所有同学的能力值两两不同。
相关
在下列比赛中: