#include // #include using namespace std; #define rep(i, n) for (int i = 0; i < (n); i++) #define rrep(i, n) for (int i = n - 1; i >= 0; i--) #define FOR(i,s, n) for (int i = (s); i < (n); i++) #define ALL(x) x.begin(),x.end() #define rALL(x) x.rbegin(),x.rend() using ll = long long; using ld = long double; using Graph = vector>; // using mint = atcoder::modint998244353; // using Mint = atcoder::modint1000000007; const ll INF = 1LL << 60; const ll inf = 1E9 + 7; const ll MOD = 998244353; const ll mod = 1E9 + 7; const ll int_max = 1LL << 32; template inline bool chmin(T& a, T b) { if (a > b) { a = b;return true; }return false; } template inline bool chmax(T& a, T b) { if (a < b) { a = b;return true; }return false; } template inline ll pair2idx(T x, T y, T n) { return (ll)x * n + y; } template inline pair idx2pair(T idx, T n) { return { idx / n, idx % n }; } long long _pow(long long x, long long n) { long long ret = 1; while (n > 0) { if (n & 1) ret *= x; x *= x; n >>= 1; } return ret; } int main(){ int n,m;cin>>n>>m; vectora(n),b(n); rep(i,n)cin>>a[i]; rep(i,n)cin>>b[i]; ll now_sum=0; rep(i,m)now_sum+=max(a[i]-b[i],0); ll ans=0; rep(i,n-m){ chmax(ans,now_sum); now_sum-=max(a[i]-b[i],0); now_sum+=max(a[i+m]-b[i+m],0); } chmax(ans,now_sum); cout << ans<