import sys n, v = map(int, input().split()) c = list(map(int, input().split())) sum_ = [0] * (n + 1) for i in range(n): sum_[i + 1] = sum_[i] + c[i] if v <= n: print(sum_[n]) sys.exit(0) dp = [sys.maxsize] * 20001 dp[0] = 0 for i in range(20000): for j in range(1, n + 1): if i + j <= 20000: dp[i + j] = min(dp[i + j], dp[i] + sum_[j]) if v <= 20000: ret = sum_[n] + dp[v - n] print(ret) sys.exit(0) m = v - n - 15000 ret = sys.maxsize for i in range(1, n + 1): a = m // i b = 15000 + m % i ret = min(ret, sum_[n] + sum_[i] * a + dp[b]) print(ret)