#include <bits/stdc++.h>
using namespace std;
const int N = (int)1e3 + 10;
const double inf = 1e16 + 10;
struct point {
  int x, y;
  point(){};
  point(int x, int y) : x(x), y(y){};
};
int n;
point p[N];
double mxD;
double getDist(point a, point b) {
  double dx = 1.0 * (a.x - b.x + 0.0);
  double dy = 1.0 * (a.y - b.y + 0.0);
  return sqrt(dx * dx + dy * dy);
}
double area2(point a, point b, point c) {
  return (b.x - a.x + 0.0) * (c.y - a.y + 0.0) -
         (b.y - a.y + 0.0) * (c.x - a.x + 0.0);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin >> n;
  for (int i = 0; i < n; ++i) {
    int x, y;
    cin >> x >> y;
    p[i] = point(x, y);
  }
  double ans = inf;
  for (int i = 0; i < n; ++i) {
    int j = (i + 2) % n;
    int k = (i + 1) % n;
    double base = getDist(p[i], p[j]);
    double s = abs(area2(p[i], p[j], p[k]));
    double h = s / (2.0 * base);
    ans = min(ans, h);
  }
  cout << setprecision(10) << fixed;
  cout << ans << endl;
  return 0;
}
