AT_xmascon21_h Homework from Zhejiang
Description
[problemUrl]: https://atcoder.jp/contests/xmascon21/tasks/xmascon21_h
$ M\ \times\ N $ 頂点の有向グラフ $ G $ が次のように与えられる.$ G $ の頂点は整数の組 $ (i,\ j) $ ($ 1\ \le\ i\ \le\ M $,$ 1\ \le\ j\ \le\ N $) で表される.$ G $ の辺は以下の通りである:
- 各 $ i,\ j,\ k $ ($ 1\ \le\ i,\ k\ \le\ M $,$ 1\ \le\ j\ \le\ N $) について,頂点 $ (i,\ j) $ から頂点 $ (k,\ j) $ へ向かう辺が $ A_{i,k} $ 本存在する.
- 各 $ i,\ j,\ l $ ($ 1\ \le\ i\ \le\ M $,$ 1\ \le\ j,\ l\ \le\ N $) について,頂点 $ (i,\ j) $ から頂点 $ (i,\ l) $ へ向かう辺が $ B_{j,l} $ 本存在する.
$ G $ の各頂点について,それを根とする全域木の個数を $ 998244353 $ で割った余りを求めよ.ただし,頂点 $ v $ を根とする全域木とは,$ G $ の辺集合の大きさ $ (M\ \times\ N\ -\ 1) $ の部分集合であって,頂点 $ v $ から他のすべての頂点へ,それらの辺を辿って到達できるようなものを指す.また,すべての辺は互いに区別できるものとする.
Input Format
入力は以下の形式で標準入力から与えられる.
> $ M $ $ N $ $ A_{1,1} $ $ A_{1,2} $ $ \cdots $ $ A_{1,M} $ $ A_{2,1} $ $ A_{2,2} $ $ \cdots $ $ A_{2,M} $ $ \vdots $ $ A_{M,1} $ $ A_{M,2} $ $ \cdots $ $ A_{M,M} $ $ B_{1,1} $ $ B_{1,2} $ $ \cdots $ $ B_{1,N} $ $ B_{2,1} $ $ B_{2,2} $ $ \cdots $ $ B_{2,N} $ $ \vdots $ $ B_{N,1} $ $ B_{N,2} $ $ \cdots $ $ B_{N,N} $
Output Format
$ G $ の頂点 $ (i,\ j) $ を根とする全域木の個数を $ 998244353 $ で割った余りを $ c_{i,j} $ として ($ 1\ \le\ i\ \le\ M $,$ 1\ \le\ j\ \le\ N $),以下の形式で出力せよ.
> $ c_{1,1} $ $ c_{1,2} $ $ \cdots $ $ c_{1,N} $ $ c_{2,1} $ $ c_{2,2} $ $ \cdots $ $ c_{2,N} $ $ \vdots $ $ c_{M,1} $ $ c_{M,2} $ $ \cdots $ $ c_{M,N} $
Explanation/Hint
### 制約
- $ 2\ \le\ M\ \le\ 500 $.
- $ 2\ \le\ N\ \le\ 500 $.
- $ 0\ \le\ A_{i,k}\