P16836 【MX-X29-T7】Mirror
题目描述
有一个镜子盒,它包含 $n$ 行 $m$ 列,共 $nm$ 个方格。每个方格中可以选择放置一面镜子,也可以不放置镜子。
若放置镜子,则镜子在方格内从左下角到右上角呈对角线方向排列,即形如 `/`。镜子的两侧都会反射光。
你可以从镜子盒外围的 $2(n+m)$ 个端口中任选一个,垂直于边界向镜子盒内发射一道激光,并观测激光最终从哪个端口射出。
端口编号方式如下:
* 上边界从左到右编号为 $1,2,\dots,m$;
* 右边界从上到下编号为 $m+1,m+2,\dots,m+n$;
* 下边界从右到左编号为 $m+n+1,m+n+2,\dots,2m+n$;
* 左边界从下到上编号为 $2m+n+1,2m+n+2,\dots,2(n+m)$。
从上边界射入时,光线向下进入;从右边界射入时,光线向左进入;从下边界射入时,光线向上进入;从左边界射入时,光线向右进入。
给定 $n,m$,你需要求出一共有多少种可能的完整实验结果。
也就是说,对于所有 $2(n+m)$ 个端口分别射入激光,记录每条光线的射出端口。不同的完整实验结果视为不同方案。
答案对 $998244353$ 取模。
输入格式
第一行包含两个整数 $T$,表示数据组数。
接下来包含 $T$ 组数据。
每组数据的格式如下:
一行包含两个整数 $n,m$。
输出格式
对于每组数据,输出一行一个整数,表示可能的完整实验结果数量对 $998244353$ 取模后的值。
说明/提示
$1\le \sum n,\sum m\le 10^6$。
| 子任务编号|分值| $\sum n,\sum m\le$ |
|:-:|:-:|:-:|
| $1$ | $10$ | $5$ |
| $2$ | $10$ | $100$ |
| $3$ | $20$ | $5000$ |
| $4$ | $30$ | $2\times 10^5$ |
| $5$ | $30$ | $10^6$ |