#5473. CSES1665 编程公司
0
CSES1665 编程公司
#CS1665. 编程公司
编程公司
题目背景
翻译自 CSES-1665 题。
题目描述
你的公司有 n 名程序员,每个程序员的技能等级在 0 到 100100100 之间。你的任务是将这些程序员分成若干个团队,使得他们能够顺利地一起工作。
根据你的经验,当程序员的技能水平相差不大时,团队工作会更加顺利。因此,创建一个团队的惩罚是团队中最强和最弱程序员的技能等级差。
你需要计算有多少种方法可以将这些程序员分成若干个团队,使得所有团队的惩罚之和不超过 x。
输入格式
第一行包含两个整数 n 和 x,分别表示程序员的数量和最大允许的惩罚总和。
第二行包含 n 个整数 t1,t2,…,tnt_1, t_2, \dots, t_nt1,t2,…,tn,表示每个程序员的技能等级。
输出格式
输出一个整数,表示有效的分组方式数目,结果对 109+710^9 + 7109+7 取模。
样例
3 2
2 5 3
3
说明/提示