結果

問題 No.3050 Prefix Removal
ユーザー titia
提出日時 2025-03-08 01:40:15
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 576 bytes
コンパイル時間 451 ms
コンパイル使用メモリ 82,324 KB
実行使用メモリ 216,024 KB
最終ジャッジ日時 2025-03-08 01:40:50
合計ジャッジ時間 33,362 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 37 WA * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = sys.stdin.readline

N,K=map(int,input().split())
A=list(map(int,input().split()))

S=[0]
for i in range(N):
    S.append(S[-1]+A[i])

MAX=-10**9
ind=-1

for i in range(K,N+1):
    if MAX<=S[i]:
        MAX=S[i]
        ind=i

A=A[:ind]
N=len(A)

S=[(0,-1)]

for i in range(N-1,-1,-1):
    S.append((S[-1][0]+A[i],i))

S.reverse()


SX=sorted(S,reverse=True)

P=[0]*N
P[0]=1
K-=1
for c,ind in SX:
    if 0<=ind<N and P[ind]==0:
        if K>0:
            K-=1
            P[ind]=1

ANS=0

for i in range(N):
    if P[i]==1:
        ANS+=S[i][0]

print(ANS)
0