結果
| 問題 |
No.2157 崖
|
| コンテスト | |
| ユーザー |
H20
|
| 提出日時 | 2022-12-09 22:17:56 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 763 bytes |
| コンパイル時間 | 228 ms |
| コンパイル使用メモリ | 82,688 KB |
| 実行使用メモリ | 99,968 KB |
| 最終ジャッジ日時 | 2024-10-14 22:14:43 |
| 合計ジャッジ時間 | 9,962 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 10 TLE * 1 -- * 11 |
ソースコード
import bisect
def is_ok(v):
S = set(range(len(D[0])))
for i in range(N-1):
ND = D[i+1]
NS = set()
for s in S:
d = D[i][s]
l = bisect.bisect_left(ND,d)
r = bisect.bisect_right(ND,d+v)
for j in range(l,r):#TLEするようならimos使う
NS.add(j)
S = NS
return S
def meguru_bisect(ng, ok):
while (abs(ok - ng) > 1):
mid = (ok + ng) // 2
if is_ok(mid):
ok = mid
else:
ng = mid
return ok
N,M = map(int, input().split())
D = []
for i in range(N):
D.append(sorted(list(set(map(int, input().split())))))
ans = meguru_bisect(-1, 10**9 + 100)
if ans == 10**9+100:
print(-1)
else:
print(ans)
H20