#include <bits/stdc++.h>
using namespace std;
const int N = (int)5e5 + 113;
const long long M = (long long)1e9 + 7;
const long double INF = 1e15;
struct pt {
  long double x, y;
  pt(long double x = 0, long double y = 0) : x(x), y(y) {}
};
pt operator-(pt a, pt b) { return pt(a.x - b.x, a.y - b.y); }
long double operator^(pt a, pt b) { return a.x * b.y - a.y * b.x; }
long double len(pt a) { return sqrt(a.x * a.x + a.y * a.y); }
long double cnt(pt a, pt b, pt x) {
  long double res = fabs((a - x) ^ (b - x)) / len(b - a);
  return res / 2;
}
int n;
pt coor[N];
long double ans = M;
int dist(int i, int j) { return min(abs(i - j), n - abs(i - j)); }
int main() {
  cin >> n;
  for (int i = 1; i <= n; ++i) {
    cin >> coor[i].x >> coor[i].y;
  }
  coor[n + 1] = coor[1];
  coor[0] = coor[n];
  for (int i = 1; i <= n; ++i) {
    for (int j = 1; j <= n; ++j) {
      if (dist(i, j) <= 1) continue;
      ans = min(ans, cnt(coor[i], coor[j], coor[i + 1]));
      ans = min(ans, cnt(coor[i], coor[j], coor[j - 1]));
    }
  }
  cout.precision(30);
  cout << ans;
  return 0;
}
