P10104 [GDKOI2023 提高组] 异或图
题目描述
给定一张 $n$ 个点 $m$ 条边的无向图和一个长度为 $n$ 的数组 $a_1, a_2, \cdots , a_n$ 以及一个整数 $C$,你需要求出有多少个长度为 $n$ 的数组 $b$ 满足:
1. $0 ≤ b_i ≤ a_i,\forall 1 ≤ i ≤ n$。
2. 对于每条边 $(u, v)$,$b_u \ne b_v$。
3. $b_1 ⊕ b_2 ⊕ \cdots ⊕ b_n = C$,其中 $\oplus$ 代表异或。
答案对 $998244353$ 取模。
输入格式
无
输出格式
无
说明/提示
可行的 $b$ 数组有 $(0, 1, 3),(0, 2, 0),(1, 0, 3),(1, 2, 1)$ 四种。
对于所有数据,满足 $1 ≤ n ≤ 15$,$ 0 ≤ m ≤ \frac{n(n−1)}{2}$,$ 0 ≤ a_i, C ≤ 10^{18}$。
- Subtask 1 (20pts):$n ≤ 5$,$ 0 ≤ a_i, C ≤ 15$。
- Subtask 2 (50pts):$n ≤ 13$。
- Subtask 3 (10pts):$m = 0$。
- Subtask 4 (20pts):无特殊限制。