Planting Trees
Xem dưới dạng PDFVào mùa thu hoạch, bác Tư dự định trồng M cây giống trên một khu vườn thẳng dài. Trên khu vườn có N vị trí có thể trồng, vị trí thứ i nằm ở tọa độ x_i. Hai cây trồng cạnh nhau phải cách nhau ít nhất một khoảng cách nhất định để không che bóng lẫn nhau.
Bác Tư muốn khoảng cách nhỏ nhất giữa hai cây liên tiếp trong số các cây được trồng là lớn nhất có thể để khu vườn thoáng đãng. Hãy giúp bác Tư tìm khoảng cách đó.
Yêu cầu
Cho N vị trí x_1, x_2, ..., x_N trên trục số (các tọa độ đôi một khác nhau, chưa sắp xếp). Cần chọn đúng M vị trí (M ≤ N) để trồng cây sao cho khoảng cách nhỏ nhất giữa hai vị trí được chọn liên tiếp (theo thứ tự tọa độ) là lớn nhất có thể.
Dữ liệu vào
Đọc từ file TREE.INP:
- Dòng thứ nhất chứa hai số nguyên N và M (2 ≤ M ≤ N ≤ 10^5).
- Dòng thứ hai chứa N số nguyên x_1, x_2, ..., x_N (−10^9 ≤ x_i ≤ 10^9, các giá trị đôi một khác nhau), mỗi số cách nhau bởi dấu cách.
Dữ liệu ra
Ghi ra file TREE.OUT:
- Một số nguyên duy nhất là khoảng cách nhỏ nhất lớn nhất có thể tìm được.
Ví dụ
Ví dụ 1:
| TREE.INP | TREE.OUT |
|---|---|
5 31 2 8 4 9 |
3 |
Giải thích: Chọn các vị trí 1, 4, 8 (hoặc 1, 4, 9) với khoảng cách nhỏ nhất là 3.
Ví dụ 2:
| TREE.INP | TREE.OUT |
|---|---|
6 40 1 5 8 10 15 |
3 |
Giải thích: Chọn 0, 5, 8, 15 (hoặc 1, 5, 8, 15) có khoảng cách nhỏ nhất là 3.
Subtask
- Subtask 1 (40% số điểm): 2 ≤ N ≤ 10^3.
- Subtask 2 (60% số điểm): 2 ≤ N ≤ 10^5.
Nhận xét