#Lutece0879. 摩天轮

摩天轮

Migrated from Lutece 879 摩天轮

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

一天,冬马被春希和雪菜拉着去一起去游乐园玩。

经过了各种过山车的洗礼后,三人决定去坐摩天轮休息下。

这是一个巨大的摩天轮,每一个车厢能坐任意多的人。现在,等着坐摩天轮的有nn个人(包含他们33人),摩天轮还有mm个车厢可以坐人。每个人都有自己肥胖程度,出于某些原因,胖子和瘦子坐在同一节车厢就会产生一定的矛盾,这个矛盾的值为(MAXMIN)2(MAX-MIN)^2,其中MAXMAX为当前车厢里面最胖的人的肥胖程度,MINMIN为最廋的那个人的肥胖程度。

爱管闲事的春希当然不希望就因为这点小事而使大家的这趟旅途不愉快,于是他决定帮大家安排怎么坐才能使总的矛盾值最小,希望你能帮他找到这个最小的矛盾值

Input

第一行为两个整数nmn,m,分别表示人数和车厢数。(3n10000,1m5000)(3 \leq n \leq 10000 , 1 \leq m \leq 5000)

第二行为nn个整数,wiw_i表示第ii个人的肥胖程度。(0wi1000000)(0 \leq w_i \leq 1000000)

Output

每组数据,输出一个整数,为矛盾的最小值。(答案保证小于2312^{31}

Samples

4 2
4 7 10 1
18

Resources

2014 UESTC Training for Dynamic Programming