#include <bits/stdc++.h>
using namespace std;
int X[1005], Y[1005];
struct PT {
  double x, y;
  PT() {}
  PT(double x, double y) : x(x), y(y) {}
  PT(const PT &p) : x(p.x), y(p.y) {}
  PT operator+(const PT &p) const { return PT(x + p.x, y + p.y); }
  PT operator-(const PT &p) const { return PT(x - p.x, y - p.y); }
  PT operator*(double c) const { return PT(x * c, y * c); }
  PT operator/(double c) const { return PT(x / c, y / c); }
};
double dot(PT p, PT q) { return p.x * q.x + p.y * q.y; }
double dist2(PT p, PT q) { return dot(p - q, p - q); }
PT ProjectPointLine(PT a, PT b, PT c) {
  return a + (b - a) * dot(c - a, b - a) / dist2(b, a);
}
int main() {
  int N;
  scanf("%d", &N);
  for (int i = 0; i < N; ++i) {
    scanf("%d%d", &X[i], &Y[i]);
  }
  double ans = 1e100;
  for (int i = 0; i < N; ++i) {
    int j = (i + 2) % N;
    int ii = (i + 1) % N;
    PT x(X[ii], Y[ii]);
    PT proj = ProjectPointLine(PT(X[i], Y[i]), PT(X[j], Y[j]), x);
    double dist = sqrt(dist2(proj, x));
    ans = min(ans, dist / 2);
  }
  printf("%.9lf\n", ans);
}
