Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập dptichchap

Tích chập

Dễ Quy hoạch động

  • 100 Điểm
  • 1.0s Thời gian
  • 256M Bộ nhớ
  • 0% Tỉ lệ AC
  • 0 Số AC

Với hai dãy số \(C\) và \(D\) cùng độ dài \(n\), định nghĩa:

\[f(C, D, n) = C_1 \times D_1 + C_2 \times D_2 + \ldots + C_n \times D_n\]

Cho hai dãy số \(A, B\) cùng độ dài \(n\). Hãy tìm bốn chỉ số \(L_A, R_A, L_B, R_B\) thoả \(R_A - L_A + 1 = R_B - L_B + 1 = len\) (với \(len \ge 1\)) sao cho:

\[f(A[L_A \ldots R_A], B[L_B \ldots R_B], len)\]

đạt giá trị lớn nhất có thể.

Input

  • Dòng đầu tiên chứa số nguyên \(n\) (\(1 \le n \le 5000\)).

  • Dòng thứ hai chứa \(n\) số nguyên \(A_1, A_2, \ldots, A_n\) (\(0 \le |A_i| \le 10^6\)).

  • Dòng thứ ba chứa \(n\) số nguyên \(B_1, B_2, \ldots, B_n\) (\(0 \le |B_i| \le 10^6\)).

Output

In ra một số nguyên duy nhất là giá trị lớn nhất có thể đạt được.

Example

Input:

5
-1 6 -1 3 0
1 1 1 1 1

Output:

8

Note

Trong ví dụ trên, chọn đoạn \(A[2 \ldots 4] = (6, -1, 3)\) và đoạn \(B[1 \ldots 3] = (1, 1, 1)\) (độ dài \(len = 3\)), ta được giá trị \(6 \times 1 + (-1) \times 1 + 3 \times 1 = 8\), đây là giá trị lớn nhất có thể đạt được.

Bình luận

Chưa có bình luận nào.