打印文章
题号:NC50544
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

给出N个单词,每个单词有个非负权值C_i,现要将它们分成连续的若干段,每段的代价为此段单词的权值和的平方,还要加一个常数M,即。现在想求出一种最优方案,使得总费用之和最小。

输入描述:

包含多组测试数据,对于每组测试数据:
第一行包含两个整数N和M。
第二行为N个整数。

输出描述:

输出仅一个整数,表示最小的价值。
示例1

输入

复制
5 5
5 9 5 7 5

输出

复制
230

备注:

对于全部数据,