n, m, k = map(int, input().split()) if n == 0: print(0) exit() a = list(map(int, input().split())) max_a = max(a) if max_a == 0: print(0) exit() # Compute initial t if max_a == 0: t = 0 else: t = min(k, m // max_a) sum_t = t * max_a if sum_t > m: sum_t = m else: r = k - t while r > 0 and sum_t < m: possible_add = 0 for num in a: if num <= (m - sum_t) and num > possible_add: possible_add = num if possible_add == 0: break sum_t += possible_add r -= 1 sum_t = min(sum_t, m) print(sum_t)