Điểm tập kết
Xem dạng PDFTrong ngày hội đón tân sinh viên, ~n~ tình nguyện viên của Đoàn Thanh niên đứng hướng dẫn dọc theo trục đường chính của khuôn viên Đại học Công nghiệp Hà Nội. Coi trục đường là một trục số: tình nguyện viên thứ ~i~ đang đứng tại điểm có toạ độ nguyên ~x_i~ (nhiều bạn có thể đứng cùng một điểm).
Cuối buổi, đội trưởng cần chọn một điểm tập kết có toạ độ nguyên ~p~ trên trục đường (không bắt buộc trùng với vị trí của bạn nào). Mỗi bạn đi thẳng tới điểm tập kết, bạn thứ ~i~ phải đi quãng đường ~|x_i - p|~. Đội trưởng muốn tổng quãng đường của cả đội
$$S(p) = |x_1 - p| + |x_2 - p| + \cdots + |x_n - p|$$
là nhỏ nhất.
Yêu cầu
Hãy tìm giá trị nhỏ nhất của ~S(p)~ và toạ độ điểm tập kết ~p~ đạt giá trị đó. Nếu có nhiều toạ độ nguyên ~p~ cùng cho tổng nhỏ nhất, hãy chọn toạ độ nhỏ nhất.
Dữ liệu vào
- Dòng thứ nhất chứa số nguyên ~n~;
- Dòng thứ hai chứa ~n~ số nguyên ~x_1, x_2, \ldots, x_n~, các số cách nhau bởi dấu cách.
Kết quả ra
- Dòng thứ nhất ghi tổng quãng đường nhỏ nhất;
- Dòng thứ hai ghi toạ độ ~p~ nhỏ nhất đạt được tổng đó.
Ràng buộc
~1 \le n \le 2 \cdot 10^5~; ~-10^9 \le x_i \le 10^9~.
- Subtask 1 (10% số điểm – test 01–03): ~n \le 100~ và ~|x_i| \le 100~;
- Subtask 2 (20% số điểm – test 04–08): ~n \le 2000~;
- Subtask 3 (25% số điểm – test 09–13): ~|x_i| \le 1000~;
- Subtask 4 (45% số điểm – test 14–20): không có ràng buộc bổ sung.
Lưu ý: tổng quãng đường có thể lên tới ~2 \cdot 10^{14}~, vượt quá phạm vi kiểu số nguyên 32 bit.
Ví dụ
Dữ liệu vào mẫu 1
4
8 -3 5 1
Kết quả ra mẫu 1
15
1
Giải thích
Với ~p = 1~: ~S = 7 + 4 + 4 + 0 = 15~. Mọi toạ độ nguyên ~p~ từ ~1~ đến ~5~ đều cho tổng ~15~ (chẳng hạn ~p = 5~: ~3 + 8 + 0 + 4 = 15~), còn ngoài đoạn này tổng lớn hơn (chẳng hạn ~p = 0~: ~8 + 3 + 5 + 1 = 17~; ~p = 6~: ~2 + 9 + 1 + 5 = 17~). Toạ độ nhỏ nhất đạt tổng ~15~ là ~p = 1~.
Bình luận