問題一覧 > 通常問題

No.3372 Suitable Constraint

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 52
作問者 : 👑 loop0919 / テスター : lif4635 Iroha_3856
ProblemId : 12753 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2025-11-21 17:41:52
コンテストの他の問題:

問題文

長さ $N$ の数列 $A = (A_1, A_2, \cdots, A_N)$ が与えられます。

任意の $1 \leq s, t \leq N$ なる整数 $s, t$ に対して以下の条件を満たすような、整数 $X$ の最大値を求めてください。

  • 変数 $i$ があり、$i = s$ で初期化されている。以下の操作を $0$ 回以上の好きな回数行うことで、$i = t$ にすることができる。
    • $A_i \times A_j \geq X$ なる整数 $j$ を一つ選ぶ。$i$ を $j$ に更新する。

$T$ 個のテストケースが与えられるので、それぞれについて答えてください。

制約

  • $1 \leq T \leq 10^4$
  • 各テストケースについて、以下の制約をすべて満たす。
    • $2 \leq N \leq 2 \times 10^5$
    • $-10^9 \leq A_i \leq 10^9$
  • 一つの入力ファイルにおける $N$ の総和は $2 \times 10^5$ 以下である。
  • 入力はすべて整数である。

入力

入力は以下の形式で標準入力から与えられます。ここで $\mathrm{case}_k ~ (1 \leq k \leq T)$ は $k$ 番目のテストケースを表します。

$T$
$\mathrm{case}_1$
$\mathrm{case}_2$
$\vdots$
$\mathrm{case}_T$

各テストケースは以下の形式で与えられます。

$N$
$A_1$ $A_2$ $\ldots$ $A_N$

出力

$T$ 行出力してください。$k$ 行目には $k$ 番目のテストケースについての答えを出力してください。

サンプル

サンプル1
入力
3
3
1 -2 3
2
1000000000 999999999
9
9 9 -8 2 -4 -4 3 -5 3
出力
-2
999999999000000000
-8

$1$ 番目のテストケースについて、$X = -2$ かつ $s = 2, ~ t = 3$ としたとき、以下のように操作を行うことで目標を達成できます。
ここで、はじめ変数 $i$ は $2$ です。

  • $j = 1$ を選び、$i$ をその $j$ に更新する。$A_2 \times A_1 = -2 \times 1 = -2 \geq X$ となるため条件を満たす。
  • $j = 3$ を選び、$i$ をその $j$ に更新する。$A_1 \times A_3 = 1 \times 3 = 3 \geq X$ となるため条件を満たす。

$X = -2$ では任意の $s, t$ で達成可能で、$X \geq -1$ では達成不可能です。よって $-2$ が答えとなります。

$2$ 番目のテストケースについて、答えが $32$ bit 整数型の範囲に収まらない場合があることに注意してください。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。