#L3658. 「2021 集训队互测」匹配计数

「2021 集训队互测」匹配计数

题目描述

给定正整数 nn 以及正整数序列 a1,a2,,ana_1, a_2, \dots, a_n,其中 aia_i 表示第 ii 个点的颜色。
求同时满足如下条件的大小为 nn 的简单无向图 GG 的个数:

  1. 边之间没有公共端点。即 GG 是一个匹配(可以是空匹配)。
  2. 对于任一条边,它的两个端点的颜色相同。
  3. 对两条不同的边 e1=(u1,v1)e_1 = (u_1, v_1)u1<v1u_1 < v_1)与 e2=(u2,v2)e_2 = (u_2, v_2)u2<v2u_2 < v_2),若
    u1<u2<v1<v2u_1 < u_2 < v_1 < v_2u2<u1<v2<v1u_2 < u_1 < v_2 < v_1,则称 e1e_1e2e_2 相交。
    要求匹配中相交的无序边对 (e1,e2)(e_1, e_2) 的个数为偶数。

由于答案可能很大,对 998244353998244353 取模。每个数据点有 TT 组数据。


输入格式

第一行输入一个正整数 TT
接下来紧跟着 TT 组数据,两组数据之间会换一行。

每组数据的第一行是一个正整数 nn,第二行 nn 个正整数 a1,a2,,ana_1, a_2, \dots, a_n,两个正整数之间以一个空格隔开。


输出格式

TT 行,每行一个非负整数表示答案。


样例

输入

3
3
1 2 3
4
1 2 1 2
4
4 4 4 4

输出

1
3
9

样例解释

  • 对于第一组数据,由于点的颜色互不相同,故不能连边,而不连边时交点数为 00,故答案为 11
  • 对于第二组数据,有 44 个匹配,其中 {(1,3),(2,4)}\{(1,3),(2,4)\} 全连的匹配的交点数为 11 不合法,故答案为 33
  • 对于第三组数据,连 00 条边或 11 条边都是合法的,而若连两条边则连 (1,3),(2,4)(1,3),(2,4) 是不合法的,故答案为 99

数据范围与提示

数据点 约束条件
1~2 n13n \le 13
3~4 aia_i 全部相同
5~10 ai10a_i \le 10
11~14 n300n \le 300
15~20 n2000n \le 2000

100%100\% 的数据:
1T51 \le T \le 51n20001 \le n \le 20001ain1 \le a_i \le n