EduBrick

K. Умножение матриц

2000 мс · 256 МБ · всё или ничего

Дана цепочка матриц A1⋅A2⋅…⋅AnA_1 \cdot A_2 \cdot \ldots \cdot A_n, где матрица AiA_i имеет размер di−1×did_{i-1} \times d_i. Умножение матриц ассоциативно, но от расстановки скобок зависит количество операций: перемножение матриц p×qp \times q и q×rq \times r стоит p⋅q⋅rp \cdot q \cdot r умножений.

Найдите наименьшее возможное количество умножений.

Формат ввода

В первой строке - число nn (1≤n≤3001 \le n \le 300) - количество матриц.

Во второй строке - n+1n + 1 число d0,d1,…,dnd_0, d_1, \ldots, d_n (1≤di≤5001 \le d_i \le 500).

Формат вывода

Одно число - наименьшее количество умножений.

Примеры

ввод
3
10 100 5 50
вывод
7500
ввод
1
7 9
вывод
0
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.