设选出的 M 件装备三项属性和分别为
X=∑xj, Y=∑yj, Z=∑zj
要求最大化
∣X∣+∣Y∣+∣Z∣
在某款角色扮演游戏中,玩家的角色拥有三项核心属性:力量、敏捷和智力。你的仓库中目前存储了N件装备,每一件装备都拥有这三项属性的数值。第i件装备的力量值为xi,敏捷值为yi,智力值为zi。需要注意的是,这些数值可能为负数
为了应对即将到来的高难度副本,你需要从这N件装备中恰好挑选出 M件进行装备。装备穿戴后,角色的最终属性值为所选 M件装备对应属性值的代数和,即
最终力量X=∑xj,最终敏捷Y=∑Yj,最终智力Z=∑Zj
为了追求极致的战斗风格,角色强度评分为三项最终属性值的绝对值之和,即∣X∣+∣Y∣+∣Z∣。请你计算一下,如何从N件装备中挑选M件,才能使得角色的强度评分最大?
输入包含N+1行。
第一行包含两个整数N和M,分别表示仓库中装备的总数和需要挑选的装备数量
接下来的N行,每行包含三个整数xi,yi,zi,分别表示第i件装备的力量、敏捷和智力属性值。 1≤M≤N≤100000,−109≤xi,yi,Zi≤109。
输出一行,一个整数,表示能够达到的最大强度评分。
输入
-5 3
1 -2 3
-4 5 -6
7 -8 -9
-10 11 -12
13 -14 15
输出
54
说明
在这个例子中,我们可以选择第1、第3和第5件装备。各项属性的总和如下:
此时的强度评分为 ∣21∣+1−24∣+19∣=21+24+9=54。
可以证明,没有其他方案能获得比54 更高的评分。