问题 5591 --排版问题

5591: 排版问题

题目描述

排版英文文章的时候,由于单词有长有短,如何美观地进行分行是一个大问题。给定一个期望长度 $a$,表示期望排版后每一行的长度都恰好为 $a$。若排版后某行实际长度为 $x$ ,则定义该行的偏离度为 $(x-a)^2$,注意 $x$ 可以超过 $a$ 或者小于 $a$ 。对整篇文章排版的偏离度定义为其中每一行的偏离度的和。 给定一个正整数 $n$,表示需要排版的文章有 $n$ 个单词,其中第 $i$ 个单词的长度为 $w_i$,请将这些单词分成若干行,每一行的实际长度就是这一行所属单词的长度之和,使得整篇文章的排版偏离度达到最小。

输入

第一行:单个整数 $n$ 与 $a$; 第二行:$n$ 个整数 $w_1,w_2.\cdots,w_n$。

输出

单个整数:表示最小的排版偏离度。

样例输入输出

输入#1 复制
10 20
8 9 4 5 7 3 4 9 9 3
输出#1 复制
3

提示

+ $1\leq a\leq 1000$; + $1\leq w_i\leq 100$; + 对于 $30\%$ 的数据:$1\leq n\leq 25$; + 对于 $60\%$ 的数据:$1\leq n\leq 5000$; + 对于 $100\%$ 的数据:$1\leq n\leq 200000$。 样例1说明:| 8 9 4 | 5 7 3 4 | 9 9 3 |
序号 标题 作者 发表时间 费用 订购数 操作