题目描述
没错,又是选课,如果你看过这次比赛的另外两道英文题,就知道为什么要用 “又” 了。多来一题不多,少出一题也不少,那就来咯(这题题意十分简单明了,只作为各位神仙选手看不懂英语题目的补偿)。
SZ市某大学某年级共有m类选修课程,每类选修课程设有n种分支,每个分支单独为学生打分。特别的是,该学校学生对于任何选修课都没有明显的短板,所以校长特意度身定做了一个打分制度:
首先由各个老师给出成绩,每类选修课程的每个分支都需要单独打分,其次,从每类选修课程的分支中都任选出一个分数,相加,共有nm种情况,也就有nm个值(这个值可以相等),为了不让某位学生的特长拉高太多分数,需要再从这么多数中挑出最小的n个,最后在实数范围内任选一个数字,将这个数字分别与挑出的n个数字相减后取绝对值的结果再求和,最小的和即为该学生选修课的最终成绩(因为这个特殊的计算成绩的方式,所以各个分支的成绩可以为负数)。
现在,zzz只知道自己各类选修课程的各个分支的成绩,想提前知道自己选修课的成绩,但自己什么都不会,只好向你求救!
输入描述
第一行输入m, n. ( 1 ≤ m ≤ 1000 1 ≤ n ≤ 2000 )
接下来m行,每行n个整数表示某类选修课的某个分支的成绩x. ( 题目保证x的绝对值的int范围内)
输出描述
第一行升序输出挑出的n的数字,数字之间用空格隔开,行末没有多余的空格。
第二行输出最终成绩。
样例输入
2 3 1 2 3 2 2 3
样例输出
3 3 4 1
来源
逆乾 WIT第二届程序设计竞赛(现场赛)