eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Ломиголовка множення

Ломиголовка множення

У ломиголовку множення грають рядом карток, кожна з яких містить одне додатнє ціле число. Під час ходу гравець забирає одну з карток з ряду і отримує число очоко, рівне добутку числа на прибраній карті та чисел на картках, які лежать безпосередньо ліворуч і праворуч від неї. Не дозволяється прибирати першу і останю картки ряду. Після останнього ходу у ряду залишається лише дві картки. Мета гри --- прибрати картки у такому порядку, щоб мінімізувати загальну кількість набраних очок. Наприклад, якщо картки містять числа $10, 1, 50, 20$ та $5$, гравець може взяти картку з числом $1$, потім $20$ і $50$, отримуючи очки $$ 10 \cdot 1 \cdot 50 + 50 \cdot 20 \cdot 5 + 10 \cdot 50 \cdot 5 = 500 + 5000 + 2500 = 8000 $$ Якби він взяв картки у зворотньому порядку, тобто $50$, потім $20$, потім $1$, кількість очок була б такою: $$ 1 \cdot 50 \cdot 20 + 1 \cdot 20 \cdot 5 + 10 \cdot 1 \cdot 5 = 1000 + 100 + 50 = 1150 $$ \InputFile У першому рядку знаходиться число карток $n\:(3 \le n \le 100)$, у другому --- $n$ чисел на картках. Числа на картках цілі від $1$ до $100$. \OutputFile Вивести одне ціле число --- мінімально можливу кількість очок.
Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
6
10 1 50 50 20 5
Вихідні дані #1
3650