Tarefa
Dada uma matriz de números não negativos, produza o maior e menor número possível que pode ser formado juntando-os.
Regras
Entrada, Saída pode estar em qualquer formato conveniente.
A matriz pode ter no máximo 1 número decimal.
Exemplos
input:[22,33,44,55.55,33]
output:4433332255.55,55.5522333344
input:[34,900,3,11,9]
output:990034311,113349009
input:[99.93,9,3,39]
output:939399.93,99.933399
input:[45.45,45,45,45]
output:45454545.45,45.45454545
input:[12,21,34,43,45.1]
output:4334211245.1,45.112213443
Isso é código-golfe, então o código mais curto vence.
[[55.55,22,33,33,44],[44,33,33,22,55.55]]
um formato de saída aceitável?Respostas:
Python 2 ,
84807876 bytesExperimente online!
-2 bytes, graças a Arnauld
fonte
05AB1E , 11 bytes
Experimente online! ou como um conjunto de testes
Explicação
fonte
cast to float
. Lembro-me que havia um no Legacy, mas eu só olhei para cima e, aparentemente, era umstringified cast to float
, que é bastante inútil desde que você quer flutua em vez de cordas para classificar .. xDis_number
, mas infelizmente nãoto_number
.JavaScript (ES6),
6866 bytesExperimente online!
Quão?
Usamos o seguinte teste para comparar dois valores na matriz de entrada:
x % 1 || x
A expressão
[x % 1 || x] + y
coage o resultado acima a uma string e concatena-o com o outro valor.Se houver um número decimal na lista, ele sempre deve ser considerado como o menor valor. Ao aplicar nossa conversão, um número decimal é transformado em uma sequência iniciada por
"0."
, lexicograficamente ordenada antes de qualquer outra coisa.Exemplos:
fonte
Japonês,
1411 bytesTente
1 byte economizado graças ao Luis , por favor,
+1
sua solução também.fonte
é
ficou escondido esse tempo todo !!Japonês ,
14 1110 bytesExperimente online!
fonte
á ®¬nÃn
para a primeira linha - chutando a mim mesmo que eu não pense em seu caminho.-h
sinalizador-g
sinalizador Também funciona com emí
vez deï
.Gelatina , 6 bytes
Experimente online!
Explicação:
fonte
.ị
é uma maneira muito legal de obter o primeiro e o último item de uma lista. Boa resposta! +1 de mim..ị
funciona. Se eu estiver lendo os documentos corretamente, acho queị
obtém o elemento y no piso (x) e no teto (x), e.
é0.5
. Isso não significa que obterá elementos de y no índice 0 e 1?Ruby ,
5645 bytesExperimente online!
-11 bytes, obrigado Jordan
fonte
->a{...
) e outra 9 usando o práticominmax
método: tio.run/...Pitão,
1312 bytesSaídas no formulário
[smallest, largest]
. Experimente online aqui ou verifique todos os casos de teste de uma vez aqui .Editar: salvou um byte removendo a stringification da função de mapeamento. Versão anterior:
hM_BSmvs`Md.p
fonte
Perl 6 , 41 bytes
Experimente online!
Alternativas:
fonte
Casca , 10 bytes
Experimente online ou verifique tudo!
Explicação
fonte