SP9097 NOVICE65 - Derangements HARD
Description
给定一个长为 $n$ 的序列 $\{a_i\}_{i=1}^n$,求它的错排有多少个。
$b$ 是 $a$ 的错排的充要条件为:
- $b$ 可以经过重新排列得到 $a$
- $\forall i \in [1,n] \text{ s.t. }b_i \neq a_i$
以上两条都要满足。
Input Format
第一行一个正整数 $T$,表示数据组数。
对于每组数据,第一行一个正整数 $n$,第二行有 $n$ 个整数,表示 $a_1,a_2,\dots,a_n$。
Output Format
对于每组数据,输出一行一个整数表示答案。
Explanation/Hint
【数据范围】
对于 $100\%$ 的数据,$1\le T \le 100$,$1\le n \le 15$,$0 \le a_i < n$。