아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Маска для монстров

시간 제한1초메모리 제한1024 MB

요약
볼록 다각형이 주어질 때, 모든 꼭짓점에 닿고 다각형 밖에 있는 가장 짧은 선, 즉 모든 꼭짓점을 지나는 최소 둘레 볼록 껍질을 구한다.
난이도

보통10점 중 6점

유형
기하, 그리디, 정렬
정답자
아직 제출이 없습니다

문제

Монстрам надо спать, но не у всех это легко получается. Так монстру Вадиму, который выглядит как выпуклый многоугольник из NN вершин на плоскости, часто мешает свет. У Вадима есть NN глаз, по одному в каждой вершине, и чтобы спокойно уснуть, ему понадобится маска для монстров, закрывающая все глаза. Маска для монстров --- это произвольная линия, которая должна вплотную прилегать к каждому глазу и не проходить внутри монстра. В магазине есть самые разные маски, но Вадиму хватит наименьшей по длине. Какой длины будет эта маска?

입력

В первой строке дано единственное целое число NN --- количество глаз монстра (3≤N≤1053 \le N \le 10^5).

В каждой из следующих NN строк через пробел даны по два целых числа x_ix\_i, y_iy\_i --- координаты вершин многоугольника в порядке обхода против часовой стрелки (−109≤x_i,y_i≤109-10^9 \le x\_i, y\_i \le 10^9).

Гарантируется, что многоугольник выпуклый.

출력

Выведите наименьшую длину маски, подходящей Вадиму.

Ответ будет засчитан, если его абсолютная или относительная погрешность не превосходит 10−610^{-6}.

예제1

  1. 예제 1

    입력
    4
    0 0
    2 0
    2 2
    0 2
    
    예상 출력
    6.000000