#include <bits/stdc++.h>
using namespace std;
long long n;
const int maxn = 1e5 + 100;
const double pi = 3.1415926535897932384626433832795028841971693993751;
double x[maxn], y[maxn], x1, y11, max1, min1, a, b, c, p, h2, a2;
double d2(double xi, double yi, double xf, double yf) {
  return (xf - xi) * (xf - xi) + (yf - yi) * (yf - yi);
}
double d(double xi, double yi, double xf, double yf) {
  return sqrt((xf - xi) * (xf - xi) + (yf - yi) * (yf - yi));
}
int main() {
  cin >> n >> x1 >> y11;
  cin >> x[0] >> y[0];
  max1 = (x[0] - x1) * (x[0] - x1) + (y[0] - y11) * (y[0] - y11);
  min1 = (x[0] - x1) * (x[0] - x1) + (y[0] - y11) * (y[0] - y11);
  for (int i = 1; i < n; i++) {
    cin >> x[i] >> y[i];
    max1 = max((x[i] - x1) * (x[i] - x1) + (y[i] - y11) * (y[i] - y11), max1);
    if (d2(x1, y11, x[i], y[i]) >= d2(x1, y11, x[i - 1], y[i - 1]) +
                                       d2(x[i - 1], y[i - 1], x[i], y[i]) ||
        d2(x1, y11, x[i - 1], y[i - 1]) >=
            d2(x1, y11, x[i], y[i]) + d2(x[i - 1], y[i - 1], x[i], y[i]))
      min1 = min((x[i] - x1) * (x[i] - x1) + (y[i] - y11) * (y[i] - y11), min1);
    else {
      a = d(x[i - 1], y[i - 1], x[i], y[i]);
      b = d(x1, y11, x[i], y[i]);
      c = d(x1, y11, x[i - 1], y[i - 1]);
      a2 = d2(x[i - 1], y[i - 1], x[i], y[i]);
      p = (a + b + c) / 2;
      h2 = 4 * p * (p - a) * (p - b) * (p - c) / a2;
      min1 = min(h2, min1);
    }
  }
  if (d2(x1, y11, x[0], y[0]) >= d2(x1, y11, x[n - 1], y[n - 1]) +
                                     d2(x[n - 1], y[n - 1], x[0], y[0]) ||
      d2(x1, y11, x[n - 1], y[n - 1]) >=
          d2(x1, y11, x[0], y[0]) + d2(x[n - 1], y[n - 1], x[0], y[0]))
    min1 = min((x[0] - x1) * (x[0] - x1) + (y[0] - y11) * (y[0] - y11), min1);
  else {
    a = d(x[n - 1], y[n - 1], x[0], y[0]);
    b = d(x1, y11, x[0], y[0]);
    c = d(x1, y11, x[n - 1], y[n - 1]);
    a2 = d2(x[n - 1], y[n - 1], x[0], y[0]);
    p = (a + b + c) / 2;
    h2 = 4 * p * (p - a) * (p - b) * (p - c) / a2;
    min1 = min(h2, min1);
  }
  cout.precision(12);
  cout << pi * (max1 - min1);
}
