atcoder#AGC035F. [AGC035F] Two Histograms

[AGC035F] Two Histograms

题目描述

N N M M 列のマス目があります。高橋君は、以下のようにして各マスに整数を書き込みます。

  • まず、すべてのマスに 0 0 を書き込む
  • i=1,2,...,N i=1,2,...,N に対し、整数 ki (0 ki M) k_i\ (0\leq\ k_i\leq\ M) を選び、上から i i 行目の左から ki k_i 個のマスに書かれた整数すべてに 1 1 を足す
  • j=1,2,...,M j=1,2,...,M に対し、整数 lj (0 lj N) l_j\ (0\leq\ l_j\leq\ N) を選び、左から j j 列目の上から lj l_j 個のマスに書かれた整数すべてに 1 1 を足す

こうして、各マスに 0,1,2 0,1,2 のいずれかの整数の書かれたマス目が出来上がります。最終的にできる可能性のある相異なるマス目の個数を 998244353 998244353 で割った余りを求めてください。 ただし、2 2 つのマス目が異なるとは、あるマスが存在してそのマスに書かれた整数が異なることを指します。

输入格式

入力は以下の形式で標準入力から与えられる。

N N M M

输出格式

最終的にできる可能性のある相異なるマス目の個数を 998244353 998244353 で割った余りを出力せよ。

题目大意

现在你有一个 n×mn\times m 的网格,你会按顺序进行做如下操作:

  • 把所有格子中的数都赋为 00
  • 对每一行选一个 kik_i (0kim)(0\leq k_i\leq m) ,并把这一行最左边的 kik_i 个格子 +1+1
  • 对每一列选一个 lil_i (0lin)(0\leq l_i\leq n) , 并把这一列最上面的 lil_i 个格子 +1+1

经过这些操作后,你可以得到一个只包含 0011 , 22 的网格。请你求出,在所有可能的操作下,可以得到多少本质不同的网格。

两个网格被称为本质不同的,当且仅当存在至少一个位置,两个网格对应位置上的数不同。

输出答案对 998244353998244353 取模的结果。

数据范围:n,m5×105n,m\leq 5\times 10^5

1 2
8
2 3
234
10 7
995651918
314159 265358
70273732

提示

制約

  • 1  N,M  5× 105 1\ \leq\ N,M\ \leq\ 5\times\ 10^5
  • N,M N,M は整数である

Sample Explanation 1

左のマスに a a が、右のマスに b b が書き込まれたマス目を (a,b) (a,b) と表すことにすると、(0,0),(0,1),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2) (0,0),(0,1),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2) 8 8 通りのマス目ができる可能性があります。