#include using namespace std; using ll = long long; struct P { typedef double T; T x, y; explicit P(T x=0, T y=0) : x(x), y(y) {} P rotate(double a) const { return P(x*cos(a)-y*sin(a), x*sin(a)+y*(cos(a))); } P operator-(P p) { return P(x-p.x, y-p.y); } double angle() const { return atan2(y, x); } T dist2() const {return x*x + y*y;} double dist() const {return sqrt((double)dist2());} }; double ans(P a, P b, P c){ double r = (b - a).dist() / 2; P m = P((a.x + b.x)/2, (a.y + b.y)/2); double d = (m-c).dist(); return abs(r - d); } int main() { cin.tie(0)->sync_with_stdio(0); P a, b, c; int x, y; cin >> x >> y; a = P(x, y); cin >> x >> y; b = P(x, y); cin >> x >> y; c = P(x, y); double res = 1e18; res = min(res, ans(a, b, c)); res = min(res, ans(a, c, b)); res = min(res, ans(b, a, c)); res = min(res, ans(b, c, a)); res = min(res, ans(c, a, b)); res = min(res, ans(c, b, a)); cout << setprecision(18); cout << res << "\n"; }