#include <bits/stdc++.h>
using namespace std;
int n;
struct Point {
  double x, y;
};
Point p[1010];
struct Line {
  double A, B, C;
};
Line build(const Point &a, const Point &b) {
  if (a.x == b.x) {
    return {1, 0, -a.x};
  } else if (a.y == b.y) {
    return {0, 1, -a.y};
  } else {
    double A = -1;
    double D = a.y - b.y;
    double DB = a.x - b.x;
    double DC = a.y * b.x - a.x * b.y;
    return {A, DB / D, DC / D};
  }
}
int main() {
  ios::sync_with_stdio(false);
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> p[i].x >> p[i].y;
  }
  double dis = 1e100;
  for (int i = 0; i < n; i++) {
    int prev = (i + n - 1) % n;
    int next = (i + 1) % n;
    Line l1 = build(p[prev], p[next]);
    double dt1 = l1.A * p[i].x + l1.B * p[i].y + l1.C;
    dis = min(dis, abs(dt1) / 2 / sqrt(l1.A * l1.A + l1.B * l1.B));
  }
  cout << setprecision(14) << dis << endl;
  return 0;
}
