CF1542E2 Abnormal Permutation Pairs (hard version)

题目描述

这是该问题的困难版本。简单版本与困难版本的唯一区别在于 $n$ 的限制条件。只有在两个版本都被解决的情况下,才能进行 hack。 $1, 2, \ldots, n$ 的一个排列是一个长度为 $n$ 的整数序列,其中每个整数 $1$ 到 $n$ 恰好出现一次。例如,$[2,3,1,4]$ 是 $1,2,3,4$ 的一个排列,但 $[1,4,2,2]$ 不是,因为 $2$ 出现了两次。 回忆一下,排列 $a_1, a_2, \ldots, a_n$ 的逆序对数是满足 $i < j$ 且 $a_i > a_j$ 的下标对 $(i, j)$ 的数量。 设 $p$ 和 $q$ 是 $1,2,\ldots,n$ 的两个排列。求满足以下条件的排列对 $(p, q)$ 的数量: - $p$ 在字典序上小于 $q$。 - $p$ 的逆序对数大于 $q$ 的逆序对数。 请输出满足条件的排列对的数量,对 $mod$ 取模。注意,$mod$ 不一定是质数。

输入格式

一行包含两个整数 $n$ 和 $mod$,满足 $1\le n\le 500$,$1\le mod\le 10^9$。

输出格式

输出一个整数,表示答案对 $mod$ 取模后的结果。

说明/提示

以下是 $n=4$ 时所有满足条件的排列对 $(p, q)$: - $p=[1,3,4,2]$,$q=[2,1,3,4]$, - $p=[1,4,2,3]$,$q=[2,1,3,4]$, - $p=[1,4,3,2]$,$q=[2,1,3,4]$, - $p=[1,4,3,2]$,$q=[2,1,4,3]$, - $p=[1,4,3,2]$,$q=[2,3,1,4]$, - $p=[1,4,3,2]$,$q=[3,1,2,4]$, - $p=[2,3,4,1]$,$q=[3,1,2,4]$, - $p=[2,4,1,3]$,$q=[3,1,2,4]$, - $p=[2,4,3,1]$,$q=[3,1,2,4]$, - $p=[2,4,3,1]$,$q=[3,1,4,2]$, - $p=[2,4,3,1]$,$q=[3,2,1,4]$, - $p=[2,4,3,1]$,$q=[4,1,2,3]$, - $p=[3,2,4,1]$,$q=[4,1,2,3]$, - $p=[3,4,1,2]$,$q=[4,1,2,3]$, - $p=[3,4,2,1]$,$q=[4,1,2,3]$, - $p=[3,4,2,1]$,$q=[4,1,3,2]$, - $p=[3,4,2,1]$,$q=[4,2,1,3]$。 由 ChatGPT 4.1 翻译