#include using namespace std; using ld = long double; constexpr ld EPS = 1e-8; constexpr ld PI = acos(-1); int main() { ios::sync_with_stdio(false); cin.tie(nullptr); vector lns; ld ln; while (cin >> ln) lns.push_back(ln); ld l = (*std::max_element(lns.begin(), lns.end())) / 2.0; ld r = 1e100; while (r - l > EPS) { ld m = (l + r) / 2.0, s = 0.0; for (ld ln : lns) s += 2 * asin(ln / 2 / m); cerr << ' ' << l << ' '<< r << " -> " << m << ' ' << s << endl; if (s >= 2 * PI) l = m; else r = m; } cerr << "radius: " << l << endl; ld ans = 0.0; for (ld ln : lns) ans += (ln / 2) * sqrt(abs(pow(ln / 2, 2) - pow(l, 2))); printf("%.20lf\n", double(ans)); return 0; }