Cho hai dãy ~a~ và ~b~ có cùng độ dài ~n~ và một số nguyên ~k~. Ta sẽ cắt dãy ~a~ ra thành ~k~ đoạn con liên tiếp sao cho mỗi đoạn con có độ dài tối thiểu là ~1~ và mọi phần tử của dãy ~a~ đều thuộc ~1~ trong ~k~ đoạn con này. Làm điều tương tự với dãy ~b~.
Gọi ~s_1, s_2, \cdots, s_k~ là tổng các phần tử của từng đoạn con của ~a~ và ~t_1, t_2, \cdots, t_k~ là tổng các phần tử của từng đoạn con của ~b~. Hãy tìm cách cắt dãy ~a~ và ~b~ sao cho biểu thức sau được cực đại hóa:
$$\sum_{j = 1}^{k} |s_j - t_j|$$
Input
Input sẽ được đưa ra theo format sau:
n k
a[1] a[2] a[3] ... a[n]
b[1] b[2] b[3] ... b[n]
Output
Gồm một số nguyên dương duy nhất, là đáp án cho bài toán trên.
Scoring
Subtask 1 (~30\%~): ~2 \leq k, n \leq 12~.
Subtask 2 (~20\%~): ~2 \leq n \leq 5*10^3~ và ~k = 2~.
Subtask 3 (~50\%~): ~2 \leq n \leq 5 * 10^3~ và ~2 \leq k \leq 10~.
Sample Input 1
9 3
2 4 -5 3 9 1 -2 -7 10
-2 -3 1 0 3 8 -9 2 -4
Sample Output 1
61
Notes
Ta tách hai dãy ~a, b~ như sau:
- ~a = [2, 4, -5, 3, 9, 1], [-2, -7], [10]~.
- ~b = [-2, -3], [1, 0, 3, 8], [-9, 2, -4]~.
Khi đó, giá trị của mảng ~s, t~ là:
- ~s = [14, -9, 10]~.
- ~t = [-5, 12, -11]~.
Đáp án cuối cùng là ~|14 - (-5)| + |(-9) - 12| + |10 - (-11)| = 61~.
Bình luận