結果
| 問題 |
No.2757 Pin Game
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-05-17 22:54:11 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 435 ms / 2,000 ms |
| コード長 | 469 bytes |
| コンパイル時間 | 258 ms |
| コンパイル使用メモリ | 82,272 KB |
| 実行使用メモリ | 192,420 KB |
| 最終ジャッジ日時 | 2024-12-20 14:55:02 |
| 合計ジャッジ時間 | 2,363 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 10 |
ソースコード
from bisect import*
n,k,*x=map(int,open(0).read().split())
l=[[]]
r=[[]]
lm=[[]for _ in range(n)]
rm=[[]for _ in range(n)]
p=0
q=n-1
for i in range(n):
if x[i]-x[p]<k:
l[-1]+=i,
else:
l+=[i],
p=i
lm[i]=len(l),l[-1][0]
j=n-1-i
if x[q]-x[j]<k:
r[-1]+=j,
else:
r+=[j],
q=j
rm[j]=len(r),r[-1][0]
ans=max(len(l),len(r))
for i in range(n):
l,li=lm[i]
j=bisect_right(x,x[li]+k)
if j<n:
r,ri=rm[j]
ans=max(ans,l+r)
print(ans)