AT_pakencamp_2025_day1_c 2nd Larger
Description
長さ $ 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 $ の値をとる場合は、それらは全て同じものとみなします。また、考えられる値が $ 1 $ つしかない場合、そのことを報告してください。
以上の問題を $ T $ 個のテストケースについて解いてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ 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 $
Output Format
$ T $ 行出力せよ。
$ i $ 行目には、 $ i $ 番目のテストケースについて、考えられる値が $ 1 $ つしかない場合、 `None` と出力せよ。そうでなければ、考えられる値として $ 2 $ 番目に大きいものを出力せよ。
Explanation/Hint
### Sample Explanation 1
$ 1 $ 番目のテストケースについて、 $ A_i\times B_j $ として $ 2 $ 番目に大きいのは $ (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_i $ は $ 0 $ となります。この場合、 $ 2 $ 番目に大きい値は存在しないため、 `None` と出力してください。
### Constraints
- $ 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 $ 以下
- 入力はすべて整数