La matrice optimale (pour la portée plutôt étroite de ce défi) est obtenue en «zippant» les éléments des lignes et colonnes correspondantes d'une matrice carrée et en obtenant le maximum de chaque paire.
Par exemple, étant donné la matrice suivante:
4 5 6
1 7 2
7 3 0
Vous pouvez le combiner avec sa transposition pour obtenir: [[[4,5,6],[4,1,7]],[[1,7,2],[5,7,3]],[[7,3,0],[6,2,0]]]
. Si vous zip chaque paire de listes, vous obtenez ce qui suit: [[(4,4),(5,1),(6,7)],[(1,5),(7,7),(2,3)],[(7,6),(3,2),(0,0)]]
. La dernière étape consiste à obtenir le maximum de chaque paire pour obtenir la matrice optimale:
4 5 7
5 7 3
7 3 0
Votre tâche consiste à sortir la matrice optimale d'une matrice carrée donnée en entrée. La matrice ne contiendra que des entiers. Les E / S peuvent être effectuées dans n'importe quel format raisonnable. Le code le plus court en octets (soit en UTF-8 ou dans l'encodage personnalisé du langage) gagne!
Les 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]]
la source
[1,2,3,4]
au lieu de[[1,2],[3,4]]
?Réponses:
Gelée , 2 octets
Essayez-le en ligne!
Comment ça fonctionne
la source
»
se comporte comme ça?!max
fait de même.Haskell , 40 octets
Essayez-le en ligne!
Je dégoulerais ceci comme:
... qui est tellement plus élégant.
la source
Husk ,
54 octetsWhoop, jamais utilisé
‡
auparavant (ou†
):Essayez-le en ligne!
Explication
la source
Octave , 13 octets
Essayez-le en ligne!
la source
MATL , 6 octets
Essayez-le en ligne!
Explication:
la source
_t!Xl_
ettt!&Xl
.APL (Dyalog Unicode) , 3 octets
Fonction de préfixe tacite anonyme.
Essayez-le en ligne!
⊢
argument⌈
plafonné avec⍉
argument transposéla source
JavaScript (ES6), 48 octets
Cas de test
Afficher l'extrait de code
la source
J , 4 octets
Fonction de préfixe tacite.
Essayez-le en ligne!
>.
plafond [de l'argument] avec|:
l'argument transposéla source
f=:
. : P au début, je pensais que vous avez réduit le bytecount de 3 octets ...<.
est censé être>.
Japt ,
12108 octetsRegardez, Ma, pas de transposition ou de fermeture éclair!
Essayez-le
la source
CJam , 8 octets
Bloc anonyme (fonction) qui prend l'entrée de la pile et la remplace par la sortie.
Essayez-le en ligne! Ou vérifiez tous les cas de test .
Explication
la source
R , 23 octets
Essayez-le en ligne!
Cela équivaut à la plupart des autres réponses. Cependant, R a deux
max
fonctions distinctes pour les deux scénarios courants:la source
Nettoyer , 58 octets
Je ne pense pas que cela nécessite une explication.
Essayez-le en ligne!
la source
C (gcc) ,
7977 octetsEssayez-le en ligne!
Prend un tableau entier plat
A
et la dimensionn
de la matrice (car la matrice doit être carrée) en entrée. Génère une représentation de chaîne de tableau d'entiers plats vers stdout.la source
Julia 0,6 , 13 octets
max.
applique la fonctionmax
élément par élément à ses arugments.Essayez-le en ligne!
la source
05AB1E , 7 octets
Essayez-le en ligne!
Explication
la source
Gelée , 7 octets
Essayez-le en ligne!
la source
Python 2 , 45 octets
Essayez-le en ligne!
Merci à totalement humain pour quelques octets enregistrés.
la source
Pari / GP , 21 octets
Essayez-le en ligne!
la source
Wolfram Language (Mathematica) , 23 octets
Un port de ma réponse Pari / GP .
est\[Transpose]
.Essayez-le en ligne!
la source
Mathematica , 30 octets
-8 octets grâce à Jonathan Frech.
Essayez-le en ligne!
la source