AT_keyence2019_d Double Landscape
题目描述
在一个 $N$ 行 $M$ 列的网格中,考虑将 $1$ 到 $N \times M$ 的整数,每个数恰好写一次,填入网格中。高桥君觉得普通地填写没有趣味,于是决定按照以下条件填写数字:
- 第 $i$ 行中填写的数的最大值为 $A_i$,其中 $1 \leq i \leq N$。
- 第 $j$ 列中填写的数的最大值为 $B_j$,其中 $1 \leq j \leq M$。
请你帮高桥君计算,满足上述条件的填写方法有多少种。答案对 $10^9 + 7$ 取模。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $M$ $A_1$ $A_2$ $\ldots$ $A_N$ $B_1$ $B_2$ $\ldots$ $B_M$
输出格式
输出满足条件的填写方法数,对 $10^9 + 7$ 取模。
说明/提示
## 限制条件
- $1 \leq N \leq 1000$
- $1 \leq M \leq 1000$
- $1 \leq A_i \leq N \times M$
- $1 \leq B_j \leq N \times M$
- $A_i, B_j$ 均为整数
## 样例解释 1
$(A_1, A_2) = (4, 3)$,$(B_1, B_2) = (3, 4)$,此时有以下 $2$ 种填写方法:
- 第 $1$ 行第 $1$ 列填写 $1$,第 $1$ 行第 $2$ 列填写 $4$,第 $2$ 行第 $1$ 列填写 $3$,第 $2$ 行第 $2$ 列填写 $2$。
- 第 $1$ 行第 $1$ 列填写 $2$,第 $1$ 行第 $2$ 列填写 $4$,第 $2$ 行第 $1$ 列填写 $3$,第 $2$ 行第 $2$ 列填写 $1$。
## 样例解释 2
无论如何填写,都无法满足条件,因此输出 $0$。
由 ChatGPT 4.1 翻译