Задачи
Треугольник
Треугольник
На плоскости расположено \textbf{N} (\textbf{3} ≤ \textbf{N}) точек. Из них случайным образом выбираются три точки, которые затем соединяются отрезками. Требуется определить математическое ожидание периметра получившегося треугольника, при условии, что каждое множество из трёх точек может быть выбрано с равной вероятностью, а получившийся треугольник может быть вырожденным.
\InputFile
В первой строке входного файла находятся два числа \textbf{H} и \textbf{W} (\textbf{1} ≤ \textbf{H}, \textbf{W} ≤ \textbf{700}). Далее следует строк по \textbf{H} символов. \textbf{j}-й символ \textbf{i}-ой строки равен '\textbf{1}', если есть точка с координатами (\textbf{i}, \textbf{j}), иначе в соответствующей позиции стоит символ '\textbf{0}'. Гарантируется, что во входных данных представлены как минимум три точки.
\OutputFile
В выходной файл выведите одно число --- математическое ожидание периметра получившегося треугольника. Ответ должен отличаться от правильного не более, чем на \textbf{10^\{-6\}}.
Входные данные #1
11 20 10000000001000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 00000000000000000000 10000000000000000000
Выходные данные #1
34.142135624