编程题
### 问题描述 蓝桥小分队在带队老师的组织下开展了一次线下唱歌团建。 带队老师为了检验一下同学们的算法能力,准备考一考他们: 现在已知歌房的点歌系统里面一共有 $N$ 首不同的歌曲,共有 $k$ 名队员,这 $k$ 个人的编号分别为 $1,2,3,...,k$。 每人按照编号从小到大的顺序开始轮流唱歌,要求: $\bullet$ 这 $k$ 个新生每人至少要唱一首歌曲; $\bullet$ 每首歌曲最多被唱一次; $\bullet$ 第 $k$ 个人唱完结束,第 $1$ 个人接着高歌,再依次轮流下去,直到这 $N$ 首歌曲全部被唱完,活动结束; $\bullet$ 两种选歌方案被认为不同表现为:存在某一名同学在同一轮次演唱了不同的歌曲。 问:如果要同时满足上述 $4$ 个要求,一共有多少种选歌方案?由于答案可能很大,因此需要对答案进行 $10^9+7$ 取模。 ### 输入格式 输入第 $1$ 行包含两个正整数 $N$ 和 $k$,表示歌曲的总数和同学们的人数。 ### 输出格式 输出仅一行,包含一个整数,表示答案(需要对答案进行 $10^9+7$ 取模)。 ### 样例输入1 ``` 2 2 ``` ### 样例输出1 ``` 2 ``` ### 样例输入2 ``` 156 23 ``` ### 样例输出2 ``` 27830567 ``` ### **说明/提示** 对于所有评测数据,$1\leq N,k\leq 10^5$。 在样例 $1$ 中,根据题目要求,可以进行如下选歌方案: 方案 $1$:编号为 $1$ 的同学选唱编号为 $1$ 的歌曲,编号为 $2$ 的同学选唱编号为 $2$ 的歌曲; 方案 $2$:编号为 $1$ 的同学选唱编号为 $2$ 的歌曲,编号为 $2$ 的同学选唱编号为 $1$ 的歌曲。 所以不同方案数 $=2$。
查看答案
赣ICP备20007335号-2