在游泳比赛中,有4种不同的笔画。每位参赛者都参与其中,并记录完成时间。从所有参赛选手中选出四名选手,这样他们的组合时间最短(一名选手只能选一名)。不止一个这样的团队是可能的,并且所有这样的团队都必须打印输出。如何最大限度地减少4个不同学科的分数总和
例如,假设有四个选手A,B,C和D.它们完成的时间是
A 50.5 52.9 51.8 52.7
B 50.7 52.7 51.4 52.7
C 50.7 52.7 51.4 52.8
D 50.8 52.9 51.6 52.6
这里,最小时间将是(A - 50.5,C - 52.7,B - 51.4 ,D - 52.6)和(A - 50.5,B - 52.7,C - 51.4,D - 52.6)。
我没有任何测试用例。我可以用蛮力来做,但这需要O(n^4)。什么是更好的方法?
“以下”对于标题来说确实是一个不好的选择。 – trincot
如果我正确理解问题,请将数据从行转换为列,然后在列之间选择最小值。这将需要O(n日志n) – AndyG
听起来像一个家庭作业问题....你有什么尝试,或者你有几个不同的想法,你已经尝试过? – random