题目背景
这是一道诈骗题。
题目描述
定义 f(n,m) 为下列问题的答案。
考虑一个 n×m 黑白网格图,初始全是白色的。每次操作如下:
- 选择一个白格子 (x,y),将其所在行全染黑,这个操作叫 (x,y,R)。
- 选择一个白格子 (x,y),将其所在列全染黑,这个操作叫 (x,y,C)。
假设最多能操作 k 次。问:
- 对于所有操作 k 次的方案,有多少种本质不同的 操作集合 。操作集合是一个大小为 k 的集合,代表操作过的 k 种操作。(注意,顺序不同但操作集合相同的 2 种方案只会被计算 1 次)
称两个操作集合 A,B 本质不同,当且仅当存在某种操作 opt,满足 [opt∈A]+[opt∈B]=1。
现在给定 n,m,请你对于所有 1≤i≤n, 1≤j≤m 求出 f(i,j) 的取值。
由于答案可能有点大,因此你只需要输出其取模 998244353 的结果。
输入格式
输入一行两个正整数 n,m。
输出格式
输出一个 n 行 m 列的矩阵,第 i 行第 j 个数表示 f(i,j)mod998244353。
2 2
2 3
3 16
提示
样例解释
对于 f(1,2),此时 k=2,一共有以下 3 个可能的操作集合:
- {(1,1,R),(1,2,C)}
- {(1,1,C),(1,2,R)}
- {(1,1,C),(1,2,C)}
注意到对于最后一个集合,有不止一种操作顺序,但是由于它们对应的操作集合相同,因此只被记入答案一次。
数据范围
洛谷代码长度限制为 50 KB。
测试点编号 |
n= |
m= |
1 |
2 |
2 |
3 |
3 |
5 |
4 |
10 |
5 |
20 |
6 |
50 |
7 |
100 |
8 |
1 |
200 |
9 |
2 |
10 |
300 |
对于所有数据,保证 1≤n,m≤300。