Problems
Выпуклая оболочка
Выпуклая оболочка
На плоскости расположено \textbf{n} точек. Построить выпуклую оболочку для заданного множества точек и вывести длину её периметра.
\InputFile
Первая строка содержит количество точек \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{20000}). Каждая из следующих \textbf{n} строк содержит два целых числа - координаты точки \textbf{x_i} и \textbf{y_i}, не превосходящие по модулю \textbf{10000}.
\OutputFile
Выведите длину периметра выпуклой оболочки с максимально возможной точностью. Если в выпуклой оболочке содержится \textbf{2} точки, то достаточно вывести удвоенную длину отрезка.
Input example #1
5 0 0 1 0 0 1 -1 0 0 -1
Output example #1
5.656854