#include <bits/stdc++.h>
using namespace std;
const long long int mod = 1e9 + 7;
long long int BIT[1000007];
long long int n;
void update(long long int x, long long int val) {
  while (x <= n) {
    BIT[x] += val;
    x += x & (-x);
  }
}
long long int query(long long int x) {
  long long int res = 0;
  while (x) {
    res += BIT[x];
    x -= x & (-x);
  }
  return res;
}
void solve() {
  memset(BIT, 0, sizeof BIT);
  long long int q;
  cin >> n >> q;
  for (long long int i = 0; i < n; ++i) {
    long long int x;
    cin >> x;
    update(x, 1);
  }
  while (q--) {
    long long int x;
    cin >> x;
    if (x > 0)
      update(x, 1);
    else {
      x = -x;
      long long int l = 1, r = n;
      long long int pos = 1;
      while (l <= r) {
        long long int m = l + (r - l) / 2;
        if (query(m) >= x) {
          pos = m;
          r = m - 1;
        } else {
          l = m + 1;
        }
      }
      update(pos, -1);
    }
  }
  for (long long int i = 1; i <= n; ++i) {
    if (query(i)) {
      cout << i << '\n';
      return;
    }
  }
  cout << "0\n";
}
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long int tc = 1;
  for (long long int i = 1; i <= tc; ++i) {
    solve();
  }
  return 0;
}
