#include <bits/stdc++.h>
using namespace std;
int main() {
  int ar[20], a, b, n, i, j, sum = 0;
  scanf("%d %d %d", &n, &a, &b);
  int c[] = {a, b, 0};
  for (i = 0; i < n; i++) scanf("%d", &ar[i]);
  for (i = 0, j = n - 1; i < n / 2; i++, j--) {
    if (ar[i] == 2 && ar[j] == 2) {
      sum += 2 * min(a, b);
    } else if (ar[i] == 2 || ar[j] == 2) {
      sum += max(c[ar[i]], c[ar[j]]);
    } else if (ar[i] == ar[j])
      continue;
    else {
      printf("-1\n");
      return 0;
    }
  }
  if (n % 2 != 0 && ar[n / 2] == 2) sum += min(a, b);
  printf("%d\n", sum);
}
