SP20637 AJOB - Ajob Subsequence

题目描述

你正在学习一种叫做 **Ajob** 的语言(在英语中意为“奇怪”),它有一个无限字母表。 教授按顺序教给你 **$N$** 个单词,每个单词的字母数与它在教学顺序中的位置相等。因此,第一个单词有 1 个字母,第二个单词有 2 个字母,第三个单词有 3 个字母,以此类推,第 **$N$** 个单词有 **$N$** 个字母。 _每个单词内的字母都是不重复的_。 你现在需要完成一个作业:从这 **$N$** 个单词中选择一个,形成一个子序列。子序列的长度要比原单词少 **$K$**。例如,如果所选单词长度为 **$L$**,那么子序列长度应为 **$L-K$**。如果 **$L$** 小于 **$K$**(即 **$L

输入格式

第一行是一个整数 **$T$**,表示测试用例的个数。接下来的 **$T$** 行中,每行包含三个由空格分隔的整数 **$N$**、**$K$** 和 **$p$**。

输出格式

对于每个测试用例,输出一个整数表示可以完成的方式数,结果需对 **$p$** 取模,每个结果占一行。 **本翻译由 AI 自动生成**