Troca em pares

Dado um array de elementos, troque os elementos do array em pares. Se o array tiver comprimento ímpar, primeiro troque os elementos em pares até o último elemento; depois, o último elemento deve ser trocado pelo elemento do array que tiver a maior pontuação de representação ASCII no array modificado (por exemplo, a representação ASCII de "Arun" seria: 65 + 114 + 117 + 110 = 406).

Se dois elementos tiverem a mesma representação ASCII, troque o último elemento do array de comprimento ímpar pelo elemento que tiver o menor índice no array modificado (o array no qual as trocas em pares foram feitas até o penúltimo elemento).

Por exemplo: se o array for [1, 2, 3, 4], vemos que ele tem comprimento par, então ele se torna [2, 1, 4, 3].

Se o array for [56, 123, 41, 321, 232], como ele tem comprimento ímpar, primeiro fazemos as trocas em pares e o array se torna [123, 56, 321, 41, 232]; depois, 232 tem a maior pontuação ASCII, então trocamos o último elemento por ele mesmo.

Exemplos

pairwiseSwap[1, 2, 3, 4] ➞ [2, 1, 4, 3]

pairwiseSwap[-8, "Arun", "Bob", 34.5, 12] ➞ [12, -8, 34.5, "Bob", "Arun"]

pairwiseSwap[56, 123, 41, 321, 232] ➞ [123, 56, 321, 41, 232]

pairwiseSwap["Nura", "Uam", "Ulgi", "Nurav", "Nayrus"] ➞ ["Uam", "Nura", "Nurav", "Ulgi", "Nayrus"]

Observações

Para -2, considere a representação ASCII como ascii_value_of(-) + ascii_value_of(2) e, para 6.2, considere a representação ASCII como ascii_value_of(6) + ascii_value_of(.) + ascii_value_of(2).