题目描述
题目译自 PA 2018 Runda 5 Skwarki。
求有多少种长度为 N 的满足以下条件的序列:
- 1∼N 这 N 个数在序列中各出现了一次;
- 至少进行 K 次操作后,该序列才只含有 1 个元素。
下面对操作进行描述:
设 Ai 为序列中的第 i 个元素(1<i<len,len 为序列长度),若 Ai−1>Ai 或 Ai+1>Ai 则标记 Ai。
若 A2>A1 则标记 A1,
若 Alen−1>Alen 则标记 Alen。
然后,将有标记的元素从序列中删除。
满足条件的序列可能很多,所以请将结果对 P 取模。
输入格式
输入仅一行,包含三个整数 N,K,P。
输出格式
输出一行一个整数,表示满足条件的序列个数对 P 取模的结果。
样例
输入
5 3 100000007
输出
4
所有满足条件的序列列举如下:
- (4,1,3,2,5)
- (4,2,3,1,5)
- (5,1,3,2,4)
- (5,2,3,1,4)
数据范围与提示
1≤K,N≤1000,N≥2,108≤P≤109。