JOI 2008 - Belt
Xem PDFThành phố JOI muốn xây một lối đi bộ tự động chạy theo đường thẳng từ đầu này đến đầu kia thành phố. Một cư dân hài lòng nếu khoảng cách từ nhà mình đến đường này không quá \(d\), và không hài lòng nếu khoảng cách lớn hơn \(d\).
Hãy chọn vị trí và hướng của đường sao cho số cư dân hài lòng lớn nhất, rồi tính số đó. Mỗi ngôi nhà là một điểm trên mặt phẳng; lối đi có chiều rộng bằng \(0\). Lối đi có thể đi qua nhà, khi đó cư dân vẫn hài lòng. Khoảng cách được hiểu là khoảng cách Euclid từ điểm đến đường thẳng.
Dữ liệu vào
Đọc từ đầu vào chuẩn.
Dòng đầu chứa số cư dân \(n\) và khoảng cách \(d\), với \(1 \le n \le 1000\), \(0.001 \le d \le 10000\). \(d\) là số thực dương, có thể có tới ba chữ số sau dấu thập phân.
\(n\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(x_i,y_i\), với \(-1000 \le x_i,y_i \le 1000\). Các vị trí nhà đôi một khác nhau.
Cả ví dụ lẫn dữ liệu chấm đều bảo đảm: nếu thay \(d\) bằng bất kỳ số thực nào trong đoạn \([d-0.0005,d+0.0005]\), số cư dân hài lòng tối đa không thay đổi.
Dữ liệu ra
Ghi ra đầu ra chuẩn một dòng chứa số cư dân hài lòng lớn nhất.
Chấm điểm
Giới hạn thời gian: \(10\) giây mỗi bộ dữ liệu. Giới hạn bộ nhớ: \(64\) MB.
Có \(10\) bộ dữ liệu, mỗi bộ \(10\) điểm; tổng cộng \(100\) điểm. \(60\%\) số điểm ứng với \(n \le 100\).
Ví dụ
Ví dụ 1
Input
10 8.000
-2 1
-10 2
-2 3
-7 -8
7 5
10 -5
-9 -6
-6 10
-5 8
4 -2
Output
9
Kỳ thi:
- JOI 2008 Representative Selection - Ngày 2 (21 Tháng ba, 2008)
Bình luận