有一天,JOI-kun 得到了一台时光机。他决定前往 9 世纪的日本。在那里,他遇到了当时日本最著名的僧侣之一——空海。这位僧侣想要开发一种新的修行方式。
他的修行方式如下: 空海阅读一部有 $N$ 个句子的经文。这些句子是有序的,他必须按顺序阅读。 每个句子都有一个 $1$ 到 $N$ 之间的整数,且每个数字在所有句子中恰好出现一次。 * 他必须在一天中 $N$ 个等分的时间段内,在第 $i$ 个时间段阅读标有整数 $i$ ($1 \le i \le N$) 的句子。每个句子都很短,因此他总能在对应的时间段内读完一个句子。
空海希望尽可能快地读完整部经文。然而,他完成阅读所需的天数取决于经文中句子上的整数排列。JOI-kun 被空海要求计算:在最优阅读策略下,使得空海恰好需要 $K$ 天才能读完的整数排列方案数。
题目描述
给定句子数量 $N$ 和整数 $K$,计算在最优阅读策略下,使得空海恰好需要 $K$ 天读完的整数排列方案数,结果对 $1\,000\,000\,007$ 取模。
输入格式
从标准输入读取数据。 * 第一行包含两个整数 $N$ 和 $K$,由空格分隔。
输出格式
输出在最优阅读策略下,使得空海恰好需要 $K$ 天读完的整数排列方案数,结果对 $1\,000\,000\,007$ 取模。
数据范围
所有输入数据满足以下条件: $1 \le N \le 100\,000$ $1 \le K \le N$
子任务
共有 4 个子任务。各子任务的分值和附加限制如下:
- 子任务 1 [4 分]:$N \le 10$。
- 子任务 2 [20 分]:$N \le 300$。
- 子任务 3 [25 分]:$N \le 3\,000$。
- 子任务 4 [51 分]:无附加限制。
样例
样例输入 1
3 2
样例输出 1
4
共有 4 种使得他需要 2 天读完的整数排列方案: 第一个句子为 1,第二个句子为 3,最后一个句子为 2。他第一天读前两个句子(编号分别为 1 和 3),第二天读最后一个句子(编号为 2)。 第一个句子为 2,第二个句子为 1,最后一个句子为 3。 第一个句子为 2,第二个句子为 3,最后一个句子为 1。 第一个句子为 3,第二个句子为 1,最后一个句子为 2。
样例输入 2
10 5
样例输出 2
1310354