#THU20162D. 军训队列

    ID: 227 Type: Default 1000ms 512MiB Tried: 2 Accepted: 1 Difficulty: 2 Uploaded By: Tags>清华推研机试校外推免动态规划

军训队列

时间限制: 1.0 秒

空间限制: 512 MB

题目描述

nn 名学生参加军训,军训的一大重要内容就是走队列,而一个队列的不整齐程度是该队中最高的学生的身高与最矮的学生的身高差值的平方

现在要将 nn 名参加军训的学生分成 kk 个队列,每个队列的人数可以是任意非负整数

在安排队列时希望所有队列的不整齐度之和尽量,请问不整齐度之和最小可以是多少?

输入格式

从标准输入读入数据。

第一行两个整数 n,kn,k,表示学生人数和队列数。

第二行 nn 个整数 h1,h2,,hnh_1,h_2,\cdots,h_n,依次表示每名学生的身高。

输出格式

输出到标准输出。

一个整数表示答案。

3 2
170 180 168
4

样例 1 解释

只要将身高为 168,170168,170 的同学分为一组,将身高为 180180 的同学分为一组,则不整齐度可达到最小值 (170168)2+(180180)2=4(170-168)^2+(180-180)^2=4

子任务

对于 10%10\% 的数据,k=1k = 1

对于另外 10%10\% 的数据,k=2k = 2

对于另外 10%10\% 的数据,k=3k = 3

对于另外 10%10\% 的数据,k=4k = 4

对于另外 10%10\% 的数据,1n,k51 \leq n,k \leq 5

对于另外 10%10\% 的数据,1n,k101 \leq n,k \leq 10

对于另外 20%20\% 的数据,1n,k1001 \leq n,k \leq 100

对于另外 5%5\% 的数据,n=k=500n = k = 500

对于所有的数据,1n,k5001 \leq n,k \leq 5000hi2000 \leq h_i \leq 200