Ordenação por pesos

C++ Medium sorting

Tarefa «Ordenação por pesos»

Dado um array de números inteiros. Ordene-o em ordem crescente pela soma dos dígitos de cada número (peso do número). Se dois números tiverem a mesma soma de dígitos, eles devem ser ordenados em ordem crescente dos próprios números. Imprima o array ordenado.

Formato de Entrada

Na primeira linha, um número inteiro N (1 ≤ N ≤ 1000) — a quantidade de números. Na segunda linha, N números inteiros, cada um em módulo não excedendo 10^6.

Formato de Saída

Imprima N números — o array ordenado.

Exemplos

Exemplo 1

ENTRADA
5 12 3 21 10 5
SAÍDA
10 3 12 21 5

Exemplo 2

ENTRADA
3 1 2 3 2 2 4
SAÍDA
1 2 3

Exemplo 3

ENTRADA
3 100 1 10
SAÍDA
1 10 100

Exemplo 4

ENTRADA
1 10
SAÍDA
10

Exemplo 5

ENTRADA
4 apple banana cherry apple 3 banana date fig
SAÍDA
apple banana cherry date fig
main.cpp