問題一覧 > 通常問題

No.2157 崖

レベル : / 実行時間制限 : 1ケース 6.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 103
作問者 : keisuke6 / テスター : kotamanegi KowerKoint2010 hibit_at
1 ProblemId : 8898 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2022-12-08 23:04:02

問題文

毎朝開催されるバーチャルコンテスト「あさかつ」では NN 問の問題がそれぞれ決まった難易度帯から出題されます.

隣り合う問題の難易度の差は と呼ばれ、一般的に崖が大きいことはあまり好まれません.

なので、問題を選定する時は崖を小さくすることが望ましいです.

次の問いは、これを一般化したものです.

NN 種類の難易度帯 DiD_i に含まれる問題はそれぞれ MM 問あり、Di,jD_{i,j} として与えられます.

これを用いて、問題のセット AA の各要素を次のように定義します.

  • Ai(1iN)A_i(1\leq{i}\leq{N}) を難易度帯 DiD_i の問題の中から一つ選ぶ.

ただし、 AA は広義単調増加列でなければなりません.

つまり、任意の 1iN11 \leq i \leq N-1 に対して AiAi+1A_i \leq A_{i+1} が成り立つ必要があります.

このとき、AA に対して f(A)f(A) を「各 ii に対する Ai+1AiA_{i+1}-A_i の最大値」で定めたとき、f(A)f(A) の最小値を解答してください.

ただし、条件を満たす AA が存在しない場合は -1 を出力してください.

入力

N MN\ M 
D1,1,D1,2,,D1,MD_{1,1} , D_{1,2} , \cdots , D_{1,M}
D2,1,D2,2,,D2,MD_{2,1} , D_{2,2} , \cdots , D_{2,M}
\hspace{8pt}\vdots \hspace{19pt} \vdots \hspace{9pt}\ddots \hspace{11pt}\vdots
DN,1,DN,2,,DN,MD_{N,1} , D_{N,2} , \cdots , D_{N,M}

  • 1N,M15001\leq{N,M}\leq{1500}
  • 1Di,j1091\leq{D_{i,j}}\leq{10^9}

出力

f(A)f(A) の最小値を一行に出力してください.ただし,条件を満たす AA が存在しない場合は -1 を出力してください.

サンプル

サンプル1
入力
2 2
5 8
12 7
出力
2

A=(5,7)A=(5,7) が最適です.

サンプル2
入力
4 4
1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7
出力
0

A=(4,4,4,4)A=(4,4,4,4) が最適です.

サンプル3
入力
3 2
2 4
1 5
3 2
出力
-1

条件を満たす AA が存在しない場合は -1 を出力してください.

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