Bộ gần nhất


Submit solution

Points: 3.6 (partial)
Time limit: 1.0s
Memory limit: 67M

Author:
Problem type

Cho dãy số \((a): a_1, a_2, ..., a_n\) gồm \(n\) số nguyên và dãy số \((b): b_1, b_2, ..., b_n\) gồm \(n\) số tự nhiên. Dãy số \((c): c_1, c_2, ..., c_n\) được xây dựng từ dãy số \((a)\) và \((b)\) thỏa mãn điều kiện \(a_i \le c_i \le a_i + b_i\) với mọi \(1 \le i \le n\). Chọn ra \(k\) số nguyên đôi một phân biệt \(1 \le i_1, i_2, ..., i_k \le n\). Tìm giá trị nhỏ nhất của biểu thức \(|c_{i_1} - c_{i_2}| + |c_{i_2} - c_{i_3}| + ... + |c_{i_k} - c_{i_1}|\).

Đầu vào

Dòng đầu tiên chứa hai số nguyên \(n, k\) \((3 \le k \le n \le 2 \times 10^5)\).

Dòng tiếp theo chứa \(n\) số nguyên trong khoảng \([-10^9, 10^9]\) là các phần tử của dãy số \((a)\).

Dòng cuối cùng chứa \(n\) số nguyên trong khoảng \([0, 10^9]\) là các phần tử của dãy số \((b)\).

Đầu ra

Một số nguyên duy nhất là kết quả của bài toán.

Subtask

\(30\%\) số test có mọi phần tử của dãy số \((b)\) đều bằng \(0\).

\(30\%\) số test có \(n \le 1000\).

Ví dụ

Đầu vào:

3 3
14 3 9
3 2 1

Đầu ra:

18

Ta xây dựng dãy \((c): 14, 5, 10\) và chọn \(i_1 = 1, i_2 = 3, i_3 = 2\) để thu được giá trị nhỏ nhất là \(|c_{i_1} - c_{i_2}| + |c_{i_2} - c_{i_3}| + |c_{i_3} - c_{i_1}| = |c_1 - c_3| + |c_3 - c_2| + |c_2 - c_1| = |14 - 9| + |9 - 5| + |5 - 14| = 18\).

QDUY

Comments

There are no comments at the moment.