Dadas duas listas diferentes de números inteiros não negativos, retorne a lista que tem o máximo mais alto (por exemplo [4, 2], [3, 3, 1] -> [4, 2]
).
Se ambos tiverem o mesmo máximo, retorne a lista que contém mais instâncias desse máximo (por exemplo [4, 2, 4], [4, 3, 3, 3, 1, 3] -> [4, 2, 4]
).
Se, após essas comparações, forem iguais, faça a mesma comparação, mas com o próximo item mais alto (por exemplo [2, 3, 4, 4], [4, 4, 3, 3, 1] -> [4, 4, 3, 3, 1]
).
Se, após todas essas comparações, elas ainda forem consideradas iguais, produza a lista mais longa (por exemplo [4, 3, 2, 1, 0], [1, 2, 3, 4] -> [4, 3, 2, 1, 0]
).
Faça seu código o mais curto possível.
Casos de teste
[4, 4, 4, 4, 2, 4], [4, 4, 4, 4, 3, 2] -> [4, 4, 4, 4, 2, 4]
[0], [] -> [0]
[0, 0], [0] -> [0, 0]
[1], [0, 0] -> [1]
[4, 4, 4, 4, 4, 2], [4, 4, 4, 4, 4] -> [4, 4, 4, 4, 4, 2]
[1, 0], [0, 0, 0] -> [1, 0]
code-golf
array-manipulation
0WJYxW9FMN
fonte
fonte
Gelatina , 4 bytes
Experimente online!
Como funciona
fonte
Haskell,
3735 bytesA entrada é tomada como uma lista de dois elementos, por exemplo
( argmax$sortOn(0-) ) [[4,4,4,4,2,4], [4,4,4,4,3,2]]
.Encontre o elemento na lista de entrada que é o máximo após a classificação, negando os valores (por exemplo, ordem decrescente).
fonte
Limpo , 42 bytes
Experimente online!
fonte
a
se a proteção de padrões for verdadeira oub
não"?if ... else if ...
, onde você pode aninhar / encadeá-los. E, assim como você pode omitirelse if(true)
, você pode pular a última condição de guarda. (no entanto, apenas uma vez por linha)JavaScript (ES7), 52 bytes
Este método funciona sem classificar as matrizes. Em vez disso, calcula a soma de 10.000 aumentada para os elementos de cada matriz. A maior soma representa a matriz com a maior pontuação. (Esta solução assume que nenhuma matriz possui mais de 10.000 elementos.)
Casos de teste
Mostrar snippet de código
fonte
Ruby , 33 bytes
Experimente online!
fonte
Python 2 , 79 bytes
Experimente online!
fonte
Ruby 149 bytes
Experimente online!
fonte
Casca , 3 bytes
Experimente online!
Essa submissão basicamente pega uma lista de dois elementos de listas como entrada e recupera o máximo (
►
), classificado por seus valores classificados em ordem decrescente (Ö_
).fonte
05AB1E , 5 bytes
Experimente online!
fonte
JavaScript (ES6), 98 bytes
g
classifica uma cópia de seu parâmetro na ordem inversa (uma vez quesort
modifica a matriz), enquantoh
recursivamente executa a comparação elementar das matrizes.fonte
Perl 6 , 17 bytes
Teste (Lambda Lambda Lambda)
-*
lambda que nega numericamente a entrada*.sort(-*)
lambda que usa que usa os resultados da aplicação para comparar elementos*.max(*.sort(-*))
lambda que encontra o máximo desses resultados e usa isso para determinar qual entrada retornar.fonte
J, 20 bytes
Ungolfed:
Essencialmente, a resposta de Pyth, traduzida sem sentido em J.
Experimente online!
fonte