AT_pakencamp_2025_day1_c 2nd Larger

题目描述

给定一个长度为 $N$ 的整数序列 $A$,以及一个长度为 $M$ 的整数序列 $B$。 请你求出所有 $A_i \times B_j$($1 \leq i \leq N, 1 \leq j \leq M$)可能得到的不同结果中,第 $2$ 大的那个值。 如果不同的 $(i,j)$ 组合得到的 $A_i \times B_j$ 的值相同,则它们只算作一种结果。如果所有可能的值只有一种,请你报告这一情况。 请你针对 $T$ 个测试用例分别求解以上问题。

输入格式

输入从标准输入读入,格式如下: > $T$ > $\text{case}_1$ > $\text{case}_2$ > $\vdots$ > $\text{case}_T$ 每个测试用例的输入格式如下: > $N$ $M$ $A_1$ $A_2$ ... $A_N$ $B_1$ $B_2$ ... $B_M$

输出格式

输出共 $T$ 行。 第 $i$ 行输出第 $i$ 个测试用例的答案。如果所有可能的结果只有一种,请输出 `None`。否则,请输出所有可行值中第 $2$ 大的那个。

说明/提示

### 样例解释 1 第 $1$ 个测试用例中,第 $2$ 大的 $A_i \times B_j$ 是在 $(i,j) = (3,4)$ 时得到的 $3$。 第 $2$ 个测试用例中,最大的 $A_i \times B_j$ 为 $(i,j) = (3,1),(4,1)$ 时的 $6$,但这些结果是相同的,所以视为一种。于是第 $2$ 大的结果是 $(i,j) = (2,1)$ 时得到的 $3$。 第 $3$ 个测试用例中,无论 $(i,j)$ 如何 $A_i \times B_j$ 都是 $0$,没有第 $2$ 大的值,因此输出 `None`。 ### 数据范围 - $1 \leq T \leq 100$ - $1 \leq N,M \leq 2\times 10^5$ - $-10^9 \leq A_i,B_i \leq 10^9$ - $N,M$ 的总和不超过 $2\times 10^5$ - 所有输入均为整数。 由 ChatGPT 5 翻译