Die optimale Matrix (für den eher engen Umfang dieser Herausforderung) wird erhalten, indem die Elemente aus den entsprechenden Zeilen und Spalten einer quadratischen Matrix "gezippt" werden und das Maximum von jedem Paar erhalten wird.
Zum Beispiel mit der folgenden Matrix:
4 5 6
1 7 2
7 3 0
Sie können es mit ihren Transponierten kombinieren zu bekommen: [[[4,5,6],[4,1,7]],[[1,7,2],[5,7,3]],[[7,3,0],[6,2,0]]]
. Wenn Sie jedes Paar von Listen zip, erhalten Sie die folgende: [[(4,4),(5,1),(6,7)],[(1,5),(7,7),(2,3)],[(7,6),(3,2),(0,0)]]
. Der letzte Schritt besteht darin, das Maximum jedes Paares zu erhalten, um die optimale Matrix zu erhalten:
4 5 7
5 7 3
7 3 0
Ihre Aufgabe ist es, die optimale Matrix einer als Eingabe gegebenen Quadratmatrix auszugeben. Die Matrix enthält nur Ganzzahlen. I / O kann in jedem vernünftigen Format erfolgen. Der kürzeste Code in Bytes (entweder in UTF-8 oder in der benutzerdefinierten Codierung der Sprache) gewinnt!
Tests
[[172,29], [29,0]] -> [[172,29], [29,0]] [[4,5,6], [1,7,2], [7,3,0]] -> [[4,5,7], [5,7,3], [7,3,0] ]] [[1,2,3], [1,2,3], [1,2,3]] -> [[1,2,3], [2,2,3], [3,3,3 ]] [[4,5, -6], [0,8, -12], [- 2,2,4]] -> [[4,5, -2], [5,8,2], [- 2,2,4]]
[1,2,3,4]
statt[[1,2],[3,4]]
? Würde sparen ~ 33%