:i P1247 - 清空数列 - 铁一启智tyqzOJ

1247: 清空数列

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:132 解决:3

题目描述

给定一个长度为 $n$ 数列 $A$。 我们的目的是 $A$ 数列清空,且有以下两种操作: $1.$ 选择 $i,j$ $(1<=i,j<=n)$,交换 $A_i$ 和 $A_j$ 的值。 $2.$ 选择 $i,j$ $(1<=i<=j<=n)$,满足 $A_i=A_j$,将 $A_i$ 和 $A_j$ 之间的数(包括 $A_i$ 和 $A_j$)删除。 其中,第 $i$ 次使用操作 $1$ 的代价为 $w_i$。 每次使用操作 $2$ 的代价均为 $m$。 请你求出要清空数列 $A$ 最小的操作代价和为多少?

输入

第一行三个整数 $n,m,k$,$k$ 表示序列 $w$ 的长度,数据保证最小代价的所有操作方案中使用操作 $1$ 的次数不超过 $k$。 第二行 $n$ 个整数,表示数列 $A$。 第三行 $k$ 个整数,表示数列 $w$。

输出

一个整数表示答案。

样例输入 复制

6 2 5
1 1 4 5 1 4
1 2 3 4 5

样例输出 复制

3

提示

对于 $10\%$ 的数据,满足 $A_1=A_n$。 对于 $40\%$ 的数据,满足 $A_i$ 互不相同。 对于 $100\%$ 的数据,满足 $1 \le n \le 500$,$1 \le A_i,m,w_i \le 1000$。