from bisect import bisect_left, bisect_right from collections import deque n, k = map(int, input().split()) k -= 1 X = list(map(int, input().split())) A = list(map(int, input().split())) Que = deque([k]) seen = set([k]) left, right = k, k while Que: idx = Que.popleft() l, r = X[idx] - A[idx], X[idx] + A[idx] lidx = bisect_left(X, l) ridx = bisect_right(X, r) - 1 if lidx < left: for i in range(lidx, left): if i in seen: continue seen.add(i) Que.append(i) left = lidx if ridx > right: for i in range(right + 1, ridx + 1): if i in seen: continue seen.add(i) Que.append(i) right = ridx print(right - left + 1)