#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);
long long n, a, b, x[100010], y[100010];
int main() {
  ios::sync_with_stdio(0);
  cin >> n >> a >> b;
  double mn = 1e18, mx = 0;
  for (int i = 0; i < n; i++) {
    cin >> x[i] >> y[i];
    double dx = x[i] - a;
    double dy = y[i] - b;
    double d = dx * dx + dy * dy;
    mn = min(mn, d);
    mx = max(mx, d);
  }
  x[n] = x[0];
  y[n] = y[0];
  for (int i = 0; i < n; i++) {
    if (x[i + 1] == x[i] && y[i + 1] == y[i]) continue;
    double dx = x[i + 1] - x[i];
    double dy = y[i + 1] - y[i];
    double da = a - x[i];
    double db = b - y[i];
    double da2 = a - x[i + 1];
    double db2 = b - y[i + 1];
    double dot1 = dx * da + dy * db;
    double dot2 = dx * da2 + dy * db2;
    if (dot1 < 0 || dot2 > 0) continue;
    double cross = dx * db - dy * da;
    double d = abs(cross) / hypot(dx, dy);
    mn = min(mn, d * d);
  }
  cout << fixed << setprecision(15) << (mx - mn) * PI << '\n';
}
