#abc378g. [ABC378] Everlasting LIDS

0
    ID: 9040 传统题 4000ms 1024MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>AtCoderABC378G排列计数RSK对应杨表最长递增/递减子序列

[ABC378] Everlasting LIDS

问题陈述

给定整数 AA、BB 和 MM。

有多少个 (1,2,…,AB−1)(1, 2, \ldots, AB - 1) 的排列 P=(P1,…,PAB−1)P = (P_1, \dots, P_{AB-1}) 满足以下所有条件?求数量模 MM。

  • PP 的最长递增子序列的长度为 AA。

  • PP 的最长递减子序列的长度为 BB。

  • 存在一个整数 nn,使得在 PP 的末尾追加 n+0.5n + 0.5 后,最长递增子序列的长度和最长递减子序列的长度都不改变。

约束

  • 所有输入值均为整数。

  • 2≤A,B2 \leq A, B

  • AB≤120AB \leq 120

  • 108≤M≤10910^8 \leq M \leq 10^9

  • MM 是质数。

输入

输入按以下格式从标准输入给出:

ABMA B M

输出

输出满足条件的排列数量,模 MM。

样例输入 1

3 2 998244353

样例输出 1

10

例如,P=(2,4,5,1,3)P = (2, 4, 5, 1, 3) 满足条件。可以按如下方式确认:

  • PP 的最长递增子序列的长度为 33。

  • PP 的最长递减子序列的长度为 22。

  • 对于 n=4n = 4,(2,4,5,1,3,4.5)(2, 4, 5, 1, 3, 4.5) 的最长递增子序列和最长递减子序列的长度分别为 33 和 22。

(1,2,3,4,5)(1, 2, 3, 4, 5) 的排列中有 1010 个满足条件。

样例输入 2

10 12 924844033

样例输出 2

623378361

输出满足条件的排列数量,模 MM。