時間限制 500 ms ・ 記憶體限制 256 MB
題目描述
給兩個整數陣列 A、B。可以各自選擇是否將陣列反轉,再各取一段長度相同、長度至少為 1 的連續子陣列。若所取位置起於 i、j,長度為 r,內積就是 A_i B_j + A_(i+1) B_(j+1) + … + A_(i+r−1) B_(j+r−1)。求所有選擇中的最大內積。
輸入格式
第一行為 n、m,1 ≤ n,m ≤ 1000。第二行有 n 個 A 的整數,第三行有 m 個 B 的整數,各數絕對值不超過 100。
輸出格式
輸出最大內積,答案可能是負數;不能選空區間。
範例測資
範例輸入 1
5 5 -3 -3 3 3 -3 2 2 2 2 2
範例輸出 1
12
範例輸入 2
5 5 -3 -3 -3 5 -5 -5 5 -3 -3 -3
範例輸出 2
77
範例輸入 3
4 3 1 2 3 4 -1 -2 -3
範例輸出 3
-1
請先登入後再提交程式碼
討論與題解
載入討論區…