#include <bits/stdc++.h>
using ll = long long;
using ull = unsigned long long;
template <class T>
inline bool chmax(T& a, T b) {
  if (a < b) {
    a = b;
    return true;
  }
  return false;
}
template <class T>
inline bool chmin(T& a, T b) {
  if (a > b) {
    a = b;
    return true;
  }
  return false;
}
const ll mod = 1e9 + 7;
void chmod(ll& M) {
  if (M >= mod)
    M %= mod;
  else if (M < 0) {
    M += (abs(M) / mod + 1) * mod;
    M %= mod;
  }
}
ll modpow(ll x, ll n) {
  if (n == 0) return 1;
  ll res = modpow(x, n / 2);
  if (n % 2 == 0)
    return res * res % mod;
  else
    return res * res % mod * x % mod;
}
int getl(int i, int N) { return i == 0 ? N - 1 : i - 1; };
int getr(int i, int N) { return i == N - 1 ? 0 : i + 1; };
long long GCD(long long a, long long b) {
  if (b == 0)
    return a;
  else
    return GCD(b, a % b);
}
using namespace std;
int main() {
  int X, N;
  cin >> X >> N;
  if (N == 0)
    cout << 0 << endl;
  else {
    vector<int> P(210);
    for (int i = 0; i <= N; i++) {
      int a;
      cin >> a;
      P.at(a) = 1;
    }
    int ans = 10000;
    int check = 114514;
    for (int i = 1; i <= 200; i++) {
      if (P.at(i) != 1 and chmin(check, abs(i - X)) == true) {
        cerr << ans << endl;
        ans = i;
      }
    }
    cout << ans << endl;
  }
}
