公式
B - お気に入りの場所を含む散歩区間 / Walking Intervals That Include a Favorite Place 解説
by
B - お気に入りの場所を含む散歩区間 / Walking Intervals That Include a Favorite Place 解説
by
sounansya
連続する \(K\) 個の区間の美しさの合計は累積和を事前に計算することで高速に計算することができます。
したがって、長さ \(K\) の区間のうち \(D\) 番目を含む区間全てに対する美しさの合計の最大値を出力すれば良いです。
n, k, d = map(int, input().split())
a = list(map(int, input().split()))
r = [0] * (n + 1)
for i in range(n):
r[i + 1] = r[i] + a[i]
ans = -(10**18)
for i in range(n - k + 1):
if i < d <= i + k:
ans = max(ans, r[i + k] - r[i])
print(ans)
投稿日時:
最終更新:
