QOJ.ac

QOJ

時間限制: 5.0 s 記憶體限制: 64 MB 總分: 100

#18082. Двухщелевой эксперимент

统计

Профессор Фридрих фон Крюгер хочет провести улучшенную версию классического эксперимента с двумя щелями. Как известно, в этом эксперименте свет проходит через непрозрачную пластину с двумя параллельными узкими щелями, демонстрируя некоторые квантовые явления.

Улучшение эксперимента заключается в том, чтобы пропустить свет через две пластины вместо одной; профессор полагает, что это позволит обнаружить новые, ранее неизвестные квантовые явления.

Профессор уже изготовил необходимые пластины. Они представляют собой диски одинакового размера, настолько тонкие, что их толщиной можно пренебречь. Пластины можно накладывать друг на друга и вращать вокруг общего центра.

На первой пластине есть две узкие щели, которые можно рассматривать как параллельные прямые, находящиеся на расстоянии $r$ от центра диска. На второй пластине имеется отверстие в форме выпуклого многоугольника. Центр диска лежит внутри многоугольника, и каждая точка на границе многоугольника находится на расстоянии строго больше $r$ от центра диска.

Расчеты профессора показывают, что чем меньше света проходит через пластины, тем выше вероятность успеха. Поэтому профессор хочет повернуть пластины так, чтобы суммарная длина пересечения щелей с многоугольником была минимальной.

Определите минимально возможную суммарную длину пересечения.

Входные данные

Первая строка содержит два целых числа $n$ и $r$ — количество вершин многоугольника и расстояние от щелей до центра диска ($3 \le n \le 10^4$, $1 \le r \le 10^5$).

Следующие $n$ строк описывают вершины многоугольника. $i$-я из них имеет вид $x_i$ $y_i$ и описывает координаты $i$-й вершины относительно центра диска, который находится в начале координат $(0, 0)$ ($-10^6 \le x_i, y_i \le 10^6$). Вершины перечислены в порядке по часовой стрелке или против часовой стрелки.

Гарантируется, что любая точка на границе многоугольника находится на расстоянии строго больше $r$ от центра диска.

Выходные данные

Выведите одно число — минимально возможную суммарную длину пересечения с точностью $10^{-6}$.

Примеры

Входные данные 1

4 1
5 5
-5 5
-5 -5
5 -5

Выходные данные 1

20.00000000000000000000

Входные данные 2

4 3
5 5
-5 5
-5 -5
5 -5

Выходные данные 2

16.28427124746190202131

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.