結果

問題 No.1095 Smallest Kadomatsu Subsequence
ユーザー 👑 Kazun
提出日時 2020-06-27 01:10:10
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 2,384 bytes
コンパイル時間 173 ms
コンパイル使用メモリ 82,288 KB
実行使用メモリ 85,912 KB
最終ジャッジ日時 2024-07-05 04:36:37
合計ジャッジ時間 4,739 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 10 TLE * 1 -- * 19
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

def Binary_Search_Count(A,x,sort=True,equal=False):
"""2,x調.
A:
x:調
sort:(True)
equal:Truex""x""
"""
if sort:
A.sort()
N=len(A)
if A[-1]<=x:
return N
elif x<A[0] or (not equal and x==A[0]):
return 0
L,R=0,N
while R-L>1:
C=L+(R-L)//2
if x<A[C] or (not equal and x==A[C]):
R=C
else:
L=C
return R
def Binary_Search_Low_Value(A,x,sort=True,equal=False):
"""Ax.
A:
x:調
sort:(True)
equal:Truex""x""
x()None.
"""
if sort:
A.sort()
K=Binary_Search_Count(A,x,sort=False,equal=equal)
if K==0:
return None
else:
return A[K-1]
def Binary_Search_High_Value(A,x,sort=True,equal=False):
"""Ax.
A:
x:調
sort:(True)
equal:Truex""x""
x()None.
"""
if sort:
A.sort()
K=Binary_Search_Count(A,x,sort=False,equal=not equal)
if K==len(A):
return None
else:
return A[K]
#----------------------------------------------------
from copy import copy
import sys
N=int(input())
A=list(map(int,input().split()))
B=copy(A)
B.sort()
if B==A or B[::-1]==A:
print(-1)
sys.exit()
#Type A
M=10**40
Lmin=[0]*N
for i in range(N):
M=Lmin[i]=min(M,A[i])
M=10**40
Rmin=[0]*N
for i in range(N-1,-1,-1):
M=Rmin[i]=min(M,A[i])
alpha=10**40
for i in range(1,N-1):
if Lmin[i-1]<A[i] and A[i]>Rmin[i+1]:
alpha=min(alpha,Lmin[i-1]+A[i]+Rmin[i+1])
beta=10**40
for i in range(1,N-1):
a=A[i]
P=Binary_Search_High_Value(A[:i],a,equal=False)
Q=Binary_Search_High_Value(A[i+1:],a,equal=False)
if P!=None and Q!=None:
beta=min(beta,P+Q+a)
print(min(alpha,beta))
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0