B - バレエの練習 解説 by sounansya


ランレングス圧縮と同様に行う部分は、各 \(X_i\) から \(i\) を引くことでランレングス圧縮そのものにすることができます。

from itertools import groupby

n, m, t, k = map(int, input().split())
l = list(map(int, input().split()))
r = list(map(int, input().split()))
a = list(set(l) & set(r))
for i in range(len(a)):
    a[i] -= i
ans = n + m
for _, v in groupby(a):
    ans -= len(list(v)) // (k + 1)
print(ans)

投稿日時:
最終更新: