#include <bits/stdc++.h>
using namespace std;
vector<int> gr[200005];
bool visited[200005];
void dfs(int node, int parent) {
  for (auto it : gr[node]) {
    if (it != parent) dfs(it, node);
  }
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long n, x, y;
  cin >> n >> x >> y;
  string second;
  cin >> second;
  long long z = 0, r = 0;
  for (long long i = 0; i < second.length(); i++) {
    if (second[i] == '0')
      z++;
    else {
      if (z) {
        r++;
        z = 0;
      }
    }
  }
  if (z) {
    r++;
    z = 0;
  }
  if (r == 0) {
    cout << 0;
    return 0;
  }
  long long m = 1e18;
  for (long long i = 0; i <= r - 1; i++) {
    long long v = i * x + (r - i) * y;
    m = min(m, v);
  }
  cout << m;
  return 0;
}
