B. 策略游戏【CSPS-2022-T2】

内存限制:512 MiB 时间限制:1000 ms 输入文件: game.in 输出文件: game.out
题目类型:传统 评测方式:文本比较

题目描述

小 L 和小 Q 在玩一个策略游戏。

有一个长度为 n 的数组 A 和一个长度为 m 的数组 B ,在此基础上定义一个大小为 n \times m 的矩阵 C ,满足 C_{i j} = A_i \times B_j 。所有下标均从 1 开始。

游戏一共会进行 q 轮,在每一轮游戏中,会事先给出 4 个参数 l_1, r_1, l_2, r_2 ,满足 1 \le l_1 \le r_1 \le n 1 \le l_2 \le r_2 \le m

游戏中,小 L 先选择一个 l_1 \sim r_1 之间的下标 x ,然后小 Q 选择一个 l_2 \sim r_2 之间的下标 y 。定义这一轮游戏中二人的得分是 C_{x y}

小 L 的目标是使得这个得分尽可能大,小 Q 的目标是使得这个得分尽可能小。同时两人都是足够聪明的玩家,每次都会采用最优的策略。

请问:按照二人的最优策略,每轮游戏的得分分别是多少?

输入格式

从文件 game.in 中读入数据。

第一行输入三个正整数 n, m, q ,分别表示数组 A ,数组 B 的长度和游戏轮数。

第二行: n 个整数,表示 A_i ,分别表示数组 A 的元素。

第三行: m 个整数,表示 B_i ,分别表示数组 B 的元素。

接下来 q 行,每行四个正整数,表示这一次游戏的 l_1, r_1, l_2, r_2

输出格式

输出到文件 game.out 中。

输出共 q 行,每行一个整数,分别表示每一轮游戏中,小 L 和小 Q 在最优策略下的得分。

样例

样例输入 #1

3 2 2
0 1 -2
-3 4
1 3 1 2
2 3 2 2

样例输出 #1

0
4

【样例解释 #1】

这组数据中,矩阵 C 如下:

\begin{bmatrix} 0 & 0 \\ -3 & 4 \\ 6 & -8 \end{bmatrix}

在第一轮游戏中,无论小 L 选取的是 x = 2 还是 x = 3 ,小 Q 都有办法选择某个 y 使得最终的得分为负数。因此小 L 选择 x = 1 是最优的,因为这样得分一定为 0

而在第二轮游戏中,由于小 L 可以选 x = 2 ,小 Q 只能选 y = 2 ,如此得分为 4

样例输入 #2

6 4 5
3 -1 -2 1 2 0
1 2 -1 -3
1 6 1 4
1 5 1 4
1 4 1 2
2 6 3 4
2 5 2 3

样例输出 #2

0
-2
3
2
-1

数据范围与提示

对于所有数据, 1 \le n, m, q \le {10}^5 -{10}^9 \le A_i, B_i \le {10}^9 。对于每轮游戏而言, 1 \le l_1 \le r_1 \le n 1 \le l_2 \le r_2 \le m

测试点编号 n, m, q \le 特殊条件
1 200 1, 2
2 1
3 2
4 \sim 5
6 1000 1, 2
7 \sim 8 1
9 \sim 10 2
11 \sim 12
13 {10}^5 1, 2
14 \sim 15 1
16 \sim 17 2
18 \sim 20

其中,特殊性质 1 为:保证 A_i, B_i > 0
特殊性质 2 为:保证对于每轮游戏而言,要么 l_1 = r_1 ,要么 l_2 = r_2