← Home
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	in := bufio.NewReaderSize(os.Stdin, 1<<20)
	out := bufio.NewWriterSize(os.Stdout, 1<<20)
	defer out.Flush()

	var n, m, k int64
	if _, err := fmt.Fscan(in, &n, &m, &k); err != nil {
		return
	}

	if n%2 == 0 {
		var x int64
		for i := int64(0); i < n; i++ {
			fmt.Fscan(in, &x)
		}
		fmt.Fprint(out, 0)
		return
	}

	minOdd := int64(1 << 60)
	for i := int64(1); i <= n; i++ {
		var x int64
		fmt.Fscan(in, &x)
		if i%2 == 1 && x < minOdd {
			minOdd = x
		}
	}

	c := (n + 1) / 2
	step := m / c
	ans := step * k
	if ans > minOdd {
		ans = minOdd
	}

	fmt.Fprint(out, ans)
}