10979: 最大贡献
[Creator : ]
Description
将一个长度为 $N$ 的序列 A[1], A[2], ..., A[N] 划分成若干个连续段(也可以不进行划分,此时会将整体看作一段),并且你需要保证每一个连续段的和都是相等的。
对于划分出来的一个长度为 $m$ 的连续段,它的贡献为 B[m]。被划分出的所有连续段的贡献之和就是这一种方案的总贡献。
对于所有可能的方案,请输出最大的总贡献。
对于划分出来的一个长度为 $m$ 的连续段,它的贡献为 B[m]。被划分出的所有连续段的贡献之和就是这一种方案的总贡献。
对于所有可能的方案,请输出最大的总贡献。
Input
第一行输入一个整数 $N$。
第二行输入 $N$ 个整数,表示序列 A[1], A[2], ..., A[N],整数间用空格隔开。
第三行输入 $N$ 个整数,表示序列 B[1], B[2], ..., B[N],整数间用空格隔开。
第二行输入 $N$ 个整数,表示序列 A[1], A[2], ..., A[N],整数间用空格隔开。
第三行输入 $N$ 个整数,表示序列 B[1], B[2], ..., B[N],整数间用空格隔开。
Output
一个整数,表示最大的总贡献。
Constraints
$1 ≤ N ≤ 20,000$
$1 ≤ A[i], B[i] ≤ 10000$
$1 ≤ A[i], B[i] ≤ 10000$
Sample 1 Input
3
4 1 5
1 2 3
Sample 1 Output
3
一共有两种合法方案。
方案一:子段为 $\{4,1,5\}$。子段长度为 $3$,对应的贡献为 $b[3]=3$。总贡献为 $3$。
方案二:子段为 $\{4,1\},\{5\}$。第一段子段长度为 $2$,对应的贡献为 $b[2]=2$。第二段子段长度为 $1$,对应的贡献为 $b[1]=1$。总贡献为 $2+1=3$。
两个方案的最大贡献为 $3$。
方案一:子段为 $\{4,1,5\}$。子段长度为 $3$,对应的贡献为 $b[3]=3$。总贡献为 $3$。
方案二:子段为 $\{4,1\},\{5\}$。第一段子段长度为 $2$,对应的贡献为 $b[2]=2$。第二段子段长度为 $1$,对应的贡献为 $b[1]=1$。总贡献为 $2+1=3$。
两个方案的最大贡献为 $3$。
Sample 2 Input
6
5 5 5 5 5 5
1 114 1 1 1 1
Sample 2 Output
342