编程题
### 问题描述 丽丽是一名软件工程师,她正在开发一个字符串转换程序。这个程序需要将一个由 $n$ 个字符组成的字符串 $a_1, a_2, \ldots, a_n$ 进行转换。每个字符可以是任意可打印字符。 为了提高转换速度,丽丽决定对字符串 $a$ 进行一些操作。她有两种操作可供选择: - 翻转字符串 $a$ 中的某个子串,需要消耗 $x$ 个单位。 - 交换字符串 $a$ 中某个子串中的字符,将其中的字符重新排列,需要消耗 $y$ 个单位。 请你帮忙计算,最少需要消耗多少单位,才能将字符串 $a$ 中的所有字符都转换为相同的字符。注意,你可以对一个子串进行多次操作。 ### 输入格式 第一行包含三个整数 $n, x$ 和 $y$,表示字符串长度以及翻转和取反操作的消耗 ($1 \leq n \leq 10^3, 0 \leq x, y \leq 10^3$)。 第二行包含一个长度为 $n$,仅包含 0 和 1 的字符串 $a$。 ### 输出格式 输出一个整数,表示将字符串 $a$ 中所有的 0 都变成 1 所需的最少消耗。如果字符串已经全部为 1,则输出 0。 ### 样例输入 ``` 5 1 2 10101 ``` ### 样例输出 ``` 3 ```
查看答案
赣ICP备20007335号-2