import qualified Control.Monad as Monad
import qualified Data.ByteString.Char8 as BS
import qualified Data.Maybe as Maybe
import qualified Debug.Trace as Trace

dist :: [Int] -> [Int] -> Double
dist a b = sqrt ((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2))
    where x1 = (fromIntegral (a !! 0))
          y1 = (fromIntegral (a !! 1))
          x2 = (fromIntegral (b !! 0))
          y2 = (fromIntegral (b !! 1))


solve :: Int -> [[Int]] -> Double
solve n a = (foldl1 (+) dists) / (fromIntegral n)
    where dists = [dist x y | x <- a, y <- a]



main = do
    n <- (fst . Maybe.fromJust . BS.readInt) <$> BS.getLine
    a <- Monad.replicateM n (map (fst . Maybe.fromJust . BS.readInt) . BS.words <$> BS.getLine)
    let ans = solve n a
    print ans