Votre tâche: écrire un programme / une fonction qui, lorsqu'il reçoit une chaîne contenant uniquement des caractères ASCII, génère / renvoie la chaîne en sens inverse.
Exemple:
1) Entrée
Hello, World!
2) Nombre de caractères uniques en entrée. (Chaîne d'entrée séparée par des tuyaux ( |
) pour plus de lisibilité)
H|e|l|l|o|,| |W|o|r|l|d|!
1 2 3 4 5 6 7 8 9 10
3) Pour les caractères en double, recherchez la première occurrence de ce caractère et numérotez le caractère en double avec le même numéro que le premier.
H|e|l|l|o|,| |W|o|r|l|d|!
1 2 3 3 4 5 6 7 4 8 3 9 10
4) Inversez la chaîne, mais pas les chiffres.
!|d|l|r|o|W| |,|o|l|l|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
5) Supprimez les caractères au-dessus des numéros de répétition. (Caractères supprimés représentés par un astérisque.)
!|d|l|*|o|W| |,|*|l|*|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
6) Remplacez les caractères supprimés par le caractère qui apparaît sur la première occurrence du nombre sur lequel le caractère supprimé est terminé.
!|d|l|l|o|W| |,|o|l|l|e|H
1 2 3 3 4 5 6 7 4 8 3 9 10
7) Sortie
!dlloW ,olleH
Cas de test:
Input -> Output
"Hello, World!" -> "!dlloW ,olleH"
"18464399" -> "99343488"
"Code Golf" -> "floG eloC"
"abcdefgABCDEFG" -> "GFEDCBAgfedcba"
"Mmm, marshmallows" -> "swwllwmhsrwm mms"
"15147" -> "74751"