AT_codequeen2025_final_f アクリルスタンド
题目描述
高桥君是偶像团体 Bit♡Beat 的粉丝,他拥有所有 $N$ 位成员每人一个的亚克力立牌。
现在,高桥君想要将这 $N$ 个亚克力立牌排成一行。但是,他不希望某些特定的 $2$ 位成员的亚克力立牌相邻摆放。具体来说,对于 $i=1,2,\ldots,M$,高桥君要求第 $A_i$ 位成员和第 $B_i$ 位成员的亚克力立牌不能相邻。
请计算有多少种排列方式能够满足高桥君的这 $M$ 个要求,并将答案对 $998244353$ 取模后输出。
输入格式
输入以如下格式通过标准输入给出。
> $N$ $M$ $A_1$ $B_1$ $A_2$ $B_2$ $\vdots$ $A_M$ $B_M$
输出格式
请输出满足条件的排列方式数,结果对 $998244353$ 取模。
说明/提示
### 样例解释 1
以下 $2$ 种排列方式满足条件。
- 先排第 $2$ 位成员、再第 $3$ 位成员、再第 $1$ 位成员的亚克力立牌。
- 先排第 $1$ 位成员、再第 $3$ 位成员、再第 $2$ 位成员的亚克力立牌。
因此,应输出 $2$。
### 样例解释 2
不存在满足条件的排列方式。因此,应输出 $0$。
### 样例解释 3
请输出对 $998244353$ 取模的结果。
### 数据范围
- $2 \leq N \leq 10^6$
- $0 \leq M \leq 16$
- $1 \leq A_i < B_i \leq N$
- $(A_i , B_i) \neq (A_j , B_j)$($i \neq j$)
- 输入的所有数均为整数。
由 ChatGPT 5 翻译