Le problème:
Deux agents secrets ennemis ont conçu une merveilleuse méthode de communication (pour vous)!
Voici comment fonctionne le processus de cryptage:
1) Prenez les équivalents ascii de chaque lettre. (Aucun espace, chiffre ou ponctuation n'est envoyé)
2) Pour chaque lettre du message, l'équivalent ascii de celle-ci et la lettre qui la suit (si elle existe, si ce n'est pas le cas, elle doit être considérée comme 0), sont multipliées (ce produit est stocké dans un tableau / liste) et additionné (ce nombre est également stocké dans une liste différente).
3) Les deux listes (des sommes et des produits) sont réunies (la liste des sommes, puis la liste des multiples, dans le même tableau) et transmises.
Vous devez écrire le plus petit programme capable d'inverser ce processus et de décrypter les messages envoyés dans ce format!
Exemples de paires d'entrée et de sortie:
[173, 209, 216, 219, 198, 198, 225, 222, 208, 100, 7272, 10908, 11664, 11988, 9657, 9657, 12654, 12312, 10800, 0] -> “HelloWorld”
[131, 133, 164, 195, 197, 99, 4290, 4422, 6499, 9506, 9702, 0] -> “ABCabc”
Il s'agit de code-golf , donc la plus petite solution en octets l'emporte.
Les messages d'erreur sont autorisés.
Votre programme peut recevoir soit une liste / un tableau unidimensionnel, soit une chaîne séparée par des virgules, si vous le spécifiez dans votre soumission. La valeur par défaut est un tableau / liste.