问题描述
下面给出一个(1,2,ldots,N)的排列,它被简称为一个排列。
对于两个排列A=(A1,A2,ldots,AN),B=(B1,B2,ldots,BN),我们定义它们的相似度为介于1和N−1之间的整数i的数量,满足:
- (Ai+1−Ai)(Bi+1−Bi)>0。
求满足相似度为K的排列对(A,B)的数量,对素数P取模。
约束条件
- 2leqNleq100
- 0leqKleqN−1
- 108leqPleq109
- P是一个素数。
- 输入中的所有值都是整数。
输入
输入以以下格式从标准输入给出:
N K P
输出
打印答案。
示例输入1
示例输出1
例如,下面是满足条件的一对排列。
- A=(1,2,3)
- B=(1,3,2)
在这里,我们有(A2−A1)(B2−B1)>0和(A3−A2)(B3−B2)<0,所以A和B的相似度为1。
示例输入2
示例输出2
将答案对P取模。