#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  int n, D;
  cin >> n >> D;
  D--;
  int g[n];
  pair<int, int> a[n];
  for (int i = int(0); i < int(n); i++) cin >> a[i].first, a[i].second = i;
  for (int i = int(0); i < int(n); i++) cin >> g[i];
  sort(g, g + n);
  reverse(g, g + n);
  int j = 0;
  for (int i = D; i < n; i++, j++) a[i].first += g[j];
  multiset<int> S;
  while (j < n) S.insert(g[j]), j++;
  for (int i = D - 1; i >= 0; i--, j++) {
    auto it = S.lower_bound(abs(a[i].first - (a[D].first)));
    if (it == S.end() or
        (*it > abs(a[i].first - (a[D].first)) and it != S.begin()))
      it--;
    a[i].first += *it;
    S.erase(it);
  }
  a[D].second = 1e8;
  sort(a, a + n);
  reverse(a, a + n);
  for (int i = 0; i < n; i++) {
    if (a[i].second == 1e8) {
      cout << i + 1 << '\n';
      exit(0);
    }
  }
  return 0;
}
