#include <bits/stdc++.h>
using namespace std;
int compute(const vector<int> &v, int n, int m, int k) {
  if (n % 2 == 0) return 0;
  if (m < ((n / 2) + 1)) return 0;
  long long int diamonds;
  diamonds = m / ((n + 1) / 2);
  diamonds *= k;
  int value = v[0];
  int pos = 2;
  while (pos < n) {
    value = min(value, v[pos]);
    pos += 2;
  }
  if (diamonds < value) return diamonds;
  return value;
}
int main() {
  int n, value;
  int m, k;
  cin >> n >> m >> k;
  vector<int> v;
  for (int i = 0; i < n; i++) {
    cin >> value;
    v.push_back(value);
  }
  cout << compute(v, n, m, k) << endl;
  return 0;
}
