『MdOI R2』Quo Vadis
题目背景
「终于……终于要到离别的时候了呢。」
『好吧。这一次过去之后,我们可能就再也不能相会了呢……』
「无论如何,还是要离别的……」
『我理解你。感谢你这些天陪伴在我身旁。』
「我也一样。如果可以的话,我真希望能继续陪伴在你身边。」
『分别之后,我也不是现在的我了……』
『至少不像现在这样。』
「离开你之后,我也不会像现在这样了……」
『君往何处?君欲往何处?君莫走,君莫走!若要走,请带上我!』
……
「所以……所以现在我们该怎么办?」
『就让我们纵然歌舞于其中吧!』
耳畔响起了小提琴和手风琴的声音,它是那么熟悉,而又那么陌生……
题目描述
在小 M 离别之前,他给小 K 留了一张纸条——
如果你能完成他的话,我将有可能会再次与你相遇。
给定一个**无限大**的矩阵 $A$,其中 $A_{i,j}=ij\gcd(i,j)$。
接下来有 $m$ 个操作,每行 $1$ 至 $3$ 个整数,意义如下:
$1$:对矩阵 $A$ 进行高斯消元,使之成为一个上三角矩阵。
**注意**:这里,高斯消元中只允许将一行的某一个倍数加到另一行上,不允许交换任意两行,不允许将某行乘上一个倍数,保证这样之后仍然可以得到上三角矩阵,并且保证消元之后的矩阵的每个元素均为非负整数。
$2\ x\ y$:求出当前矩阵的 $A_{x,y}$。
$3\ x$:求出 $\sum\limits_{i=1}^{x}\sum\limits_{j=1}^{x}A_{i,j}$。
$4\ x$:设 $B$ 是一个 $x$ 阶矩阵,其中 $B_{i,j}=A_{i,j}$,你需要求出 $\det B$。
**上述所有答案对 $998244353$ 取模**。
如果你不知道什么是行列式,请点[这里](https://oi-wiki.org/math/gauss/#_12),其中 $\text{det}$ 表示求矩阵的行列式。
~~在你完成了小 M 给小 K 的任务之后,你可以来看小提琴和手风琴的谱子。~~
输入输出格式
输入格式
第一行一个整数 $m$。
接下来 $m$ 行,每行 $1\sim 3$ 个整数,表示操作。
输出格式
若干行,表示你的答案对 $998244353$ 取模后的值。
输入输出样例
输入样例 #1
6
4 4
2 4 4
3 4
1
2 4 4
3 4
输出样例 #1
2304
64
186
32
72
说明
【帮助与提示】
为方便选手测试代码,本题额外提供两组附加样例供选手使用。
[样例输入1](https://www.luogu.com.cn/paste/p2w7kxik) [样例输出1](https://www.luogu.com.cn/paste/2tqpm5zj)
[样例输入2](https://www.luogu.com.cn/paste/u20duxjv) [样例输出2](https://www.luogu.com.cn/paste/jcn7ohaw)
-----
【样例解释】
注意到询问的 $x$ 和 $y$ 范围都不大于 $4$,所以我们考虑使用 $A$ 左上角的 $4\times 4$ 子矩阵进行解释,容易证明这不会造成任何影响。
在高斯消元之前,矩阵为 $\begin{pmatrix}1&2&3&4\\2&8&6&16\\3&6&27&12\\4&16&12&64\end{pmatrix}$,高斯消元后则为 $\begin{pmatrix}1&2&3&4\\0&4&0&8\\0&0&18&0\\0&0&0&32\end{pmatrix}$。
----
【数据范围】
| 子任务编号 | $1$ 操作是否存在 | $1$ 操作前 $2$ 操作中 $x,y \leq$ | $1$ 操作后 $2$ 操作中 $x,y \leq$ | $1$ 操作前 $3$ 操作中 $x \leq$ | $1$ 操作后 $3$ 操作中 $x \leq$ | $4$ 操作中 $x \leq$ | 分值 |
| :--------: | :--------------: | :------------------------------: | :------------------------------: | :------------------------------: | :----------------------------: | :-------------------: | :----: |
| Subtask 1 | 否 | $5000$ | 不存在 | $500$ | 不存在 | 不存在 | $4$ |
| Subtask 2 | 否 | $10^{18}$ | 不存在 | $500$ | 不存在 | 不存在 | $13$ |
| Subtask 3 | 否 | $10^{18}$ | 不存在 | $5 \times 10^6$ | 不存在 | $50$ | $15$ |
| Subtask 4 | 否 | $10^{18}$ | 不存在 | $10^8$ | 不存在 | $100$ | $16$ |
| Subtask 5 | 是 | $10^{18}$ | $100$ | $5 \times 10^6$ | $100$ | 不存在 | $17$ |
| Subtask 6 | 是 | $10^{18}$ | $5\times 10^5$ | $10^8$ | $10^3$ | $100$ | $17$ |
| Subtask 7 | 是 | $10^{18}$ | $5 \times 10^6$ | $10^8$ | $5\times 10^6$ | $5\times 10^6$ | $18$ |
对于 $100\%$ 的数据,$1 \leq m\leq 10^5$,$1$ 操作前的所有 $3$ 操作中 $\sum x$ 不大于每一个测试点 $x$ 范围的 $10$ 倍。
保证 $1$ 操作出现不超过 $1$ 次。