Entrada:
- Uma matriz contendo três números inteiros:
0
,1
e2
em qualquer ordem (isto é,[2, 0, 1]
) - E uma sequência de comprimento> = 2 contendo apenas letras alfabéticas (maiúsculas e minúsculas) e dígitos (ie
a1B2c3
)
Saída:
Com base na matriz, classificamos e produzimos a string.
Como é que isso funciona?
- A matriz indica a ordem de precedência
a-z
,A-Z
e0-9
, sendo o primeiro0
; segundo ser1
; e terceiro ser2
. - Os caracteres individuais da sequência podem ser ordenados com base nisso.
Exemplo:
- Matriz:
[2, 0, 1]
- Corda:
a1B2c3
Com base na matriz, sabemos que nossa precedência de pedidos é 0-9a-zA-Z
.
Com base nisso, podemos converter e gerar a string:123acB
.
Regras do desafio:
- Para a matriz, você pode optar por usar a entrada indexada em 0 ou 1, portanto,
[3, 1, 2]
também é uma entrada válida se você preferir usar matrizes indexadas em 1. - A sequência (entrada e saída) contém apenas caracteres válidos:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
. - Se o seu idioma não suporta matrizes (ou se você optar por), você é livre para usar cordas em vez de matrizes para o primeiro parâmetro (ou seja
012
,[0,1,2]
, etc.).
Regras gerais:
- Isso é código-golfe , então a resposta mais curta em bytes vence.
Não permita que idiomas com código de golfe o desencorajem a postar respostas com idiomas que não sejam codegolf. Tente encontrar uma resposta o mais curta possível para 'qualquer' linguagem de programação. - As regras padrão se aplicam à sua resposta, para que você possa usar STDIN / STDOUT, funções / método com os parâmetros adequados, programas completos. Sua chamada.
- As brechas padrão são proibidas.
- Se possível, adicione um link com um teste para o seu código.
- Além disso, adicione uma explicação, se necessário.
Casos de teste:
[2, 0, 1] & a1B2c3 -> 123acB
[2, 1, 0] & aAaA909UuHWw9gh2 -> 02999AAHUWaaghuw
[2, 1, 0] & 6Bx43 -> 346Bx
[1, 0, 2] & jfjf33g -> ffgjj33
[0, 2, 1] & AbC13 -> b13AC
[1, 2, 0] & Qfl0l -> Q0fll
[0, 1, 2] & 9870abcABC -> abcABC0789
[0, 2, 1] & test123 -> estt123
[2, 0, 1] & WHAT -> AHTW
[2, 0, 1] & WhAt -> htAW
[1, 0, 2] & 102BACbac -> ABCabc012
123
, 012
, [0,1,2]
, [0, 1, 2]
, 0;1;2
ou o que você preferir.
"123"
um formato válido para o primeiro parâmetro?