#include using namespace std; #define int long long signed main(){ int n, k; cin >> n >> k; int x[100010]; int a[100010]; for(int i = 0;i < n;i++) cin >> x[i]; for(int i = 0;i < n;i++) cin >> a[i]; map mp; set st; for(int i = 0;i < n;i++){ mp[x[i]] = i; if(i != k-1) st.insert(x[i]); } int ans = 0; queue que; que.push(x[k-1]); while(!que.empty()){ int idx = mp[que.front()]; que.pop(); ans++; int l = x[idx]-a[idx]; int r = x[idx]+a[idx]; for(auto itr = st.lower_bound(l);itr != st.end() && *itr <= r;){ que.push(*itr); int tmp = *itr; *itr++; st.erase(tmp); } } cout << ans << endl; return 0; }