#include <bits/stdc++.h>
using namespace std;
struct node {
  double x, y;
} a[1010];
int n;
double solve(int x, int y, int z) {
  if (y == 1) x = n;
  if (y == n) z = 1;
  double A = a[z].y - a[x].y;
  double B = a[x].x - a[z].x;
  double C = a[z].x * a[x].y - a[x].x * a[z].y;
  return fabs(A * a[y].x + B * a[y].y + C) / sqrt(A * A + B * B) / 2;
}
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> a[i].x >> a[i].y;
  }
  double ans = 1e18;
  for (int i = 1; i <= n; i++) {
    ans = min(ans, solve(i - 1, i, i + 1));
  }
  printf("%.10lf\n", ans);
  return 0;
}
