公式
C - Sum of Min Query 解説
by
C - Sum of Min Query 解説
by
sounansya
\(N\) 個の和のうち各クエリで変わる要素は \(1\) つのみです。したがって、その部分の差分を計算し、順番に値を計算していけば良いです。
import sys
input = sys.stdin.readline
n, q = map(int, input().split())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
ans = 0
for i in range(n):
ans += min(a[i], b[i])
for _ in range(q):
cc, xx, vv = map(str, input().split())
c, x, v = cc == "A", int(xx), int(vv)
x -= 1
ans -= min(a[x], b[x])
if c:
a[x] = v
else:
b[x] = v
ans += min(a[x], b[x])
print(ans)
投稿日時:
最終更新: