P13889 [蓝桥杯 2023 省 Python A] 子矩阵

题目描述

给定一个 $n \times m$($n$ 行 $m$ 列)的矩阵。 设一个矩阵的价值为其所有数中的最大值和最小值的乘积。求给定矩阵的所有大小为 $a \times b$($a$ 行 $b$ 列)的子矩阵的价值的和。 答案可能很大,你只需要输出答案对 $998244353$ 取模后的结果。

输入格式

输入的第一行包含四个整数分别表示 $n, m, a, b$,相邻整数之间使用一个空格分隔。 接下来 $n$ 行每行包含 $m$ 个整数,相邻整数之间使用一个空格分隔,表示矩阵中的每个数 $A_{i,j}$。

输出格式

输出一行包含一个整数表示答案。

说明/提示

**【样例说明】** $1 \times 2 + 2 \times 3 + 4 \times 5 + 5 \times 6 = 58$。 **【评测用例规模与约定】** 对于 $40\%$ 的评测用例,$1 \leq n, m \leq 100$; 对于 $70\%$ 的评测用例,$1 \leq n, m \leq 500$; 对于所有评测用例,$1 \leq a \leq n \leq 1000$,$1 \leq b \leq m \leq 1000$,$1 \leq A_{i,j} \leq 10^9$。