結果
| 問題 | No.3760 Streaming Schedule |
| コンテスト | |
| ユーザー |
ei1333333
|
| 提出日時 | 2026-10-04 20:04:38 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 198 ms / 2,000 ms |
| + 509µs | |
| コード長 | 793 bytes |
| 記録 | |
| コンパイル時間 | 64 ms |
| コンパイル使用メモリ | 82,692 KB |
| 実行使用メモリ | 141,064 KB |
| 最終ジャッジ日時 | 2026-10-09 20:53:39 |
| 合計ジャッジ時間 | 5,754 ms |
|
ジャッジサーバーID (参考情報) |
judge4_0 / judge5_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 47 |
ソースコード
INF = (1 << 61) - 1
N, B, C = map(int, input().split())
A = list(map(int, input().split()))
all_sum = sum(A)
size = 1
while size < N + 1:
size <<= 1
seg = [INF] * (2 * size)
def set_val(p, x):
p += size
seg[p] = x
while p > 1:
p >>= 1
seg[p] = min(seg[p << 1], seg[p << 1 | 1])
def prod(l, r):
res = INF
l += size
r += size
while l < r:
if l & 1:
res = min(res, seg[l])
l += 1
if r & 1:
r -= 1
res = min(res, seg[r])
l >>= 1
r >>= 1
return res
set_val(0, 0)
for i in range(1, N + 1):
l = max(0, i - C)
r = i - (1 if B == 2 and i >= 2 else 0)
set_val(i, prod(l, r) + A[i - 1])
ans = all_sum - prod(max(0, N + 1 - C), N + 1)
print(ans)
ei1333333