#include <bits/stdc++.h>
using namespace std;
const int N = 3e5 + 7;
long long dp[N];
int n, i, j, X, Y, pre = 0, a[N], tot;
char s[N];
int main() {
  for (scanf("%d%d%d%s", &n, &X, &Y, s + 1), i = 1; i <= n; i = j) {
    for (j = i; s[i] == s[j]; ++j)
      ;
    a[++tot] = s[i] - '0';
  }
  for (memset(dp, 0x3f, sizeof(dp)), dp[0] = 0, i = 1; i <= tot; ++i) {
    if (a[i] == 0) {
      dp[i] = min(dp[i - 1] + Y, pre == 0 ? Y : dp[pre] + X);
      pre = i;
    } else
      dp[i] = dp[i - 1];
  }
  printf("%I64d\n", dp[tot]);
}
