A41138.锦标赛
普及+/提高
官方
通过率:35.48%
时间限制:1.00s
内存限制:256MB
题目描述
欢迎来到锦标赛!这一次,你将作为裁判参加。
作为裁判,主要任务就是安排赛程。本次比赛将由多次一对一组成,共有 n 个选手,其中第 i 个选手的战力值为 Ai 。
对于一场比赛,不妨设双方选手的战力值为 Ai,Aj ,双方实力越悬殊,比赛无聊程度越大,所以我们定义一场比赛的无聊值为 ∣Ai−Aj∣ ,且胜者是战力较大的一方。
锦标赛的赛程一共有 K 天,每天可以同时进行多场比赛,每人每天至多参加一场比赛。其中第 i 天的所有比赛的败者不能进入第 i+1 天的比赛,最终在 K 天内决出一个冠军。
你的任务是安排不超过 K 天的赛程,使所有比赛的无聊值和最小。
输入格式
第一行两个整数 n,K ,表示参赛选手的数量和锦标赛持续的天数。
第二行 n 个空格隔开的正整数 A1,...,An ,表示 n 个选手的战力值。
输出格式
输出一行一个整数,表示在进行合理的赛程安排之后,无聊值之和的最小值。
输入输出样例
输入#1
4 3 1 3 4 7
输出#1
6
说明/提示
Note
在 3 天内结束比赛。
第一天安排战力值为 1 和战力值为 3 的选手交战,无聊值为 2 ,战力值为 3 的选手胜出。
第二天安排战力值为 3 和战力值为 4 的选手交战,无聊值为 1 ,战力值为 4 的选手胜出。
第三天安排战力值为 4 和战力值为 7 的选手交战,无聊值为 3 ,战力值为 7 的选手胜出。
总无聊值和最小值为这种方案,即 6 。
数据规模与约定
对于 20% 的数据,n≤8,K≤3 。
对于 40% 的数据,n≤100,K≤20 。
对于 70% 的数据,n≤200,K≤50 。
对于另 20% 的数据,n≤500,K≤20。
对于 100% 的数据,n≤1000,K≤50,n≤2K,Ai≤105 。