题目描述
一个 `DAG`,这个 `DAG` 有 $m$ 层,第一层只有⼀个源点,最后⼀层只有一个汇点,剩下的每⼀层都有 $k$ 个节点。每次可以取反第 $i$ 层和第 $i+1$ 层之间的连边。也就是把原本从 $(i,k_1)$ 连到 $(i+1,k_2)$ 的边,变成从 $(i,k_2)$ 连到 $(i+1,k_1)$。请问有多少种取反的方案,把从源点到汇点的路径数变成偶数条?答案对 $998244353$ 取模。
输入
第一行两个整数 $m,k$。
接下来 $m-1$ 行, 第⼀行和最后⼀行有 $k$ 个整数 $0$ 或 $1$,剩下每行有 $k^2$ 个整数 $0$ 或 $1$,第 $(j-1)\times k+t$ 个整数表示 $(i,j)$ 到 $(i+1,t)$ 有没有边。
输出
一行一个整数表示答案。
样例输入输出
输入#1
复制
5 3
1 0 1
0 1 0 1 1 0 0 0 1
0 1 1 1 0 0 0 1 1
0 1 1
提示
对于 $100\%$ 的数据,$1 \leq m \leq 10000$,$1 \leq k \leq 10$。