Dado um número inteiro positivo, podemos formar um novo número descrito por seus dígitos tomados em pares (com um 0 inicial adicionado para números com número ímpar de dígitos).
Por exemplo:
1234 pode ser lido como um 2, três 4s - portanto, a saída para 1234 é 2444.
643 tem um número ímpar de dígitos, portanto, um zero à esquerda é adicionado para torná-lo uniforme. Então, 0643 pode ser lido como: zero 6s, quatro 3s; portanto, a saída seria 3333.
(Este é o OEIS A056967 ).
Tarefa: Dada uma matriz de números inteiros positivos, classifique-os pelo valor descrito pelo par de dígitos, em ordem crescente. A ordem não importa entre os números de entrada que levam ao mesmo valor.
Entrada : uma matriz / lista / conjunto de números inteiros positivos. Zeros à esquerda na entrada não são permitidos e são inseridos como strings / listas de dígitos / etc. não são permitidos - as entradas devem ser tão próximas a um tipo inteiro / numérico quanto o seu idioma é capaz de usar.
Resultado : a matriz classificada da maneira mencionada acima, retornada de qualquer uma das formas usuais (função retorna valor / STDOUT / grita no vazio / etc.) Você pode imprimi-las individualmente, retorná-las como números, seqüências de caracteres ou listas de dígitos.
Casos de teste
Input
Output
[19, 91, 2345, 2023]
[19, 2023, 2345, 91]
[25257, 725, 91, 5219, 146125, 14620512]
[725, 5219, 14620512, 91, 146125, 25257]
[123130415 3335 91 111111111 528 88]
[528, 111111111, 123130415, 3335, 88, 91]
[1 21 33 4 5]
[1 4 5 21 33]
[3725, 10, 2537, 1, 1225, 2512]
[10, 1, 1225, 2512, 2537, 3725]
[125, 26, 1115, 1024]
[1115, 1024, 125, 26]
(No quarto caso de teste, 1, 4 e 5 são avaliados como 0 e, portanto, podem ser classificados entre si em qualquer ordem. Da mesma forma, no quinto caso de teste, 10 e 1 avaliam como 0s e, portanto, podem ser classificados em qualquer pedido.)
(Relacionado: Diga o que vê , Um 1, Dois 1, Um 2 Um 1
Agradecemos a Kevin Cruijssen pela ajuda para esclarecer a pergunta na Sandbox.
strtoi
retorna um número inteiro - correto? Se assim for, tudo bem, é legal como é.