QOJ.ac

QOJ

Time Limit: 5.0 s Memory Limit: 64 MB Total points: 100

#18082. Thí nghiệm khe đôi

Statistics

Giáo sư Friedrich von Krüger muốn thực hiện một phiên bản cải tiến của thí nghiệm cổ điển với hai khe hẹp. Như bạn đã biết, đó là thí nghiệm mà ánh sáng đi qua một tấm chắn mờ đục với hai khe hẹp song song và thể hiện một số hiện tượng lượng tử.

Sự cải tiến của thí nghiệm này là để ánh sáng đi qua hai tấm chắn thay vì một; và giáo sư tin rằng sự cải tiến này sẽ cho phép khám phá ra những hiện tượng lượng tử mới chưa từng được biết đến trước đây.

Giáo sư đã chế tạo các tấm chắn cần thiết. Chúng là các đĩa có cùng kích thước và mỏng đến mức có thể bỏ qua độ dày. Các tấm chắn có thể được đặt chồng lên nhau và sau đó xoay quanh một tâm chung.

Tấm chắn thứ nhất có hai khe hẹp, có thể coi là hai đường thẳng song song nằm ở khoảng cách $r$ so với tâm của đĩa. Tấm chắn thứ hai có một lỗ hổng dưới dạng một đa giác lồi. Tâm của đĩa nằm bên trong đa giác và mọi điểm trên biên của đa giác đều có khoảng cách lớn hơn $r$ so với tâm của đĩa.

Các tính toán của giáo sư cho thấy lượng ánh sáng đi qua các tấm chắn càng ít thì xác suất thành công càng cao. Vì vậy, giáo sư muốn xoay các tấm chắn sao cho tổng độ dài phần giao nhau giữa các khe hẹp và đa giác là nhỏ nhất.

Hãy xác định tổng độ dài nhỏ nhất có thể của phần giao nhau đó.

Dữ liệu vào

Dòng đầu tiên chứa hai số nguyên $n$ và $r$ — số đỉnh của đa giác và khoảng cách từ các khe hẹp đến tâm của đĩa ($3 \le n \le 10^4, 1 \le r \le 10^5$).

$n$ dòng tiếp theo mô tả các đỉnh của đa giác. Dòng thứ $i$ có dạng $x_i$ $y_i$ và mô tả tọa độ của đỉnh thứ $i$ so với tâm của đĩa được đặt tại gốc tọa độ $(0, 0)$ ($-10^6 \le x_i, y_i \le 10^6$). Các đỉnh được liệt kê theo thứ tự cùng chiều kim đồng hồ hoặc ngược chiều kim đồng hồ.

Đảm bảo rằng mọi điểm trên biên của đa giác đều có khoảng cách lớn hơn $r$ so với tâm của đĩa.

Dữ liệu ra

In ra một số duy nhất — tổng độ dài nhỏ nhất có thể của phần giao nhau với độ chính xác $10^{-6}$.

Ví dụ

Dữ liệu vào 1

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

Dữ liệu ra 1

20.00000000000000000000

Dữ liệu vào 2

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

Dữ liệu ra 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.