#P1198. 变换
变换
题目描述
游园会有有一个项目叫做变换,这个项目的规则如下:
现在有 和 两个长度相同的序列,都是由 和 构成。
我们想要把 序列变成 序列,每次变换我们可以把一个 变成 ,或者把一个 变成 ,第 个数改变一次所需要的代价是 , 是题目给出的,跟位置 有关,即我们变换第 个数的时候使用, 是当前 和 里面不匹配的数字的数量。
显然,不同的变换顺序的代价是不一样的。我们希望求出这个最小的变换代价。
输入格式
输入的第一行是一个整数 ,表示序列的长度。
接下来一行有一个长度为 的序列,表示 序列,中间有一个空格隔开。
接下来一行有一个长度为 的序列,表示 序列,中间有一个空格隔开。
接下来一行有 个整数,表示 ,整数用一个空格隔开。
输出格式
输出最小的变换代价。
样例输入 #1
3
1 0 1
1 0 1
1 2 3
样例输出 #1
0
样例输入 #2
3
1 0 1
0 1 0
1 2 3
样例输出 #2
10
数据范围
####【输入输出样例 说明】
这里 和 是完全一样的,所以不需要变换,最小的变化代价是 。
####【输入输出样例 说明】 这里我们先变换第 个数, 花费的代价是 , 此时还有 个数没有匹配好, 所以乘 以 , 然后我们变换第 个数, 花费的代价是 , 此时还有 个数没有匹配好, 所以乘 以 , 然后我们变换第 个数, 花费的代价是 , 此时只有 个数没有匹配好, 所以乘 以 , 总的代价 , 为最小代价。
如果我们换种顺序去变换, 比如我们先变换第 个, 再变换第 个, 最后变换第 个, 那么花 费的代价就是 。
####【数据范围】
对于所有的数据: 。
| 数据编号 | 数据范围 | 特殊性质 |
|---|---|---|
| 保证 和 最多只有一个数不同 | ||
| 无 |