#include <bits/stdc++.h>
using namespace std;
bool us[200][200];
int n, a, b, q_x[20000], q_y[20000], h, t,
    e[4][2] = {{1, 0}, {0, 1}, {-1, 0}, {0, -1}};
bool can(int x, int y) {
  if (x < 1 || y < 1 || x > n || y > n) return false;
  if ((a == (x - 1) && b == (y - 1)) || (a == (x - 1) && b == (y)) ||
      (a == (x) && b == (y - 1)) || (a == (x) && b == (y)))
    return false;
  x = n - x + 2;
  y = n - y + 2;
  return !(a == (x - 1) && b == (y - 1)) && !(a == (x - 1) && b == (y)) &&
         !(a == (x) && b == (y - 1)) && !(a == (x) && b == (y));
}
int main() {
  cin >> n >> a >> b;
  for (int i = 1; i <= n; i++)
    for (int j = 1; j <= n; j += n - 1)
      if (can(i, j)) {
        us[i][j] = true;
        q_x[t] = i;
        q_y[t] = j;
        t++;
      }
  for (int i = 1; i <= n; i += n - 1)
    for (int j = 1; j <= n; j++)
      if (can(i, j)) {
        us[i][j] = true;
        q_x[t] = i;
        q_y[t] = j;
        t++;
      }
  for (; h < t;) {
    int x = q_x[h], y = q_y[h];
    h++;
    for (int i = 0; i < 4; i++)
      if (can(x + e[i][0], y + e[i][1]) && !us[x + e[i][0]][y + e[i][1]]) {
        us[x + e[i][0]][y + e[i][1]] = true;
        q_x[t] = x + e[i][0];
        q_y[t] = y + e[i][1];
        t++;
      }
  }
  if (us[n / 2 + 1][n / 2 + 1])
    cout << "YES";
  else
    cout << "NO";
  cout << endl;
  return 0;
}
