eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Выпуклая оболочка

Выпуклая оболочка

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