#P9005. [RC-07] 超超立方体

[RC-07] 超超立方体

题目描述

有一个 nn 维 (a1−1)×(a2−1)×⋯×(an−1)(a_1-1)\times (a_2-1)\times \dots \times (a_n-1) 超立方体。左下角坐标为 (1,1,…,1)(1,1,\dots,1),右上角坐标为 (a1,a2,…,an)(a_1,a_2,\dots,a_n)。

考虑一个无向图,有 a1×a2×⋯×ana_1\times a_2\times \dots \times a_n 个有标号的结点。结点的标号分别为 (x1,…,xn) (1≤xi≤ai)(x_1,\dots,x_n)\ (1\le x_i\le a_i),每个节点对应超立方体内部或者边界上一个整点。对于一对图上的顶点 (U,V) (U=(x1,…,xn),V=(y1,…,yn))(U,V)\ (U=(x_1,\dots,x_n),V=(y_1,\dots,y_n)),它们之间有边相连当且仅当 UVUV 平行于超立方体的一条棱。换句话说,也就是 ∑1≤i≤n[xi=yi]=n−1\sum_{1\le i\le n}[x_i=y_i]=n-1。

计算该图生成树个数对 998244353998244353 取模的结果。

输入格式

第一行一个正整数 nn。

接下来一行 nn 个正整数 a1,a2,…,ana_1,a_2,\dots,a_n。

输出格式

输出答案对 998244353998244353 取模的结果。

1
5
125
5
2 3 4 5 6
676736091

提示

所有数据均满足:1≤n≤1001\le n\le 100,2≤ai≤50002\le a_i\le 5000。

  • 子任务 11(55 分):n=1n=1。
  • 子任务 22(55 分):n≤3,∏ai≤500n\le 3,\prod a_i\le 500。
  • 子任务 33(1010 分):n=2n=2。
  • 子任务 44(8080 分):无特殊限制。