MUJIN プログラミングチャレンジ B - ロボットアーム / Robot Arm

,

B - ロボットアーム / Robot Arm

本番

#!/usr/bin/env python3
import math
def area(r):
    return pow(r,2) * math.pi
a, b, c = map(float,input().split())
r = a + b + c
l = - min(0, a + b - c, a - b + c, - a + b + c)
print('%.12f' % (area(r) - area(l)))

rubyで70byte。$r^2\pi - l^2\pi = \pi(r+l)(r-l)$という変形。12.56637は$4\pi$。

a,b,c=gets.split.map &:to_f;p 12.56637*((s=a+b+c)-t=[a,b,c,s/2].max)*t