题号:NC14601
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 128 M,其他语言256 M
64bit IO Format: %lld
题目描述
有 N 个方块排成一排,每个方块都染有颜色,第 i 个的颜色为 Ci,一共有M种颜色,每种颜色的方块都有不同的价值Wi,现在要求找出一段方块,使得其中只出现过一次的方块的价值总和最大。
输入描述:
T组数据。每组数据第一行,包含两个整数N和M
接下来一行包含N个整数Ci,代表每个方块的颜色
最后一行包含M个整数Wi,表示每种颜色的价值
T = 10
1 <= N, M <= 105,1 <= Ci <= M,1 <= Wi <= 109
输出描述:
每组数据一个整数,表示答案。
示例1
输入
复制
5 3
1 2 1 1 3
30 40 50
10 5
5 4 3 5 3 1 2 4 2 1
78 65 99 132 200