Défi
Le défi consiste à chiffrer une chaîne donnée, en utilisant les règles spécifiées ci-dessous. La chaîne ne contiendra que des alphabets minuscules , des chiffres et / ou des espaces vides .
Équivalent d'un personnage
Maintenant, vous devez d'abord savoir comment trouver «l'équivalent» de chaque personnage.
Si le caractère est une consonne, c'est la façon de trouver son équivalent:
1) List all the consonants in alphabetical order
b c d f g h j k l m n p q r s t v w x y z
2) Get the position of the consonant you are finding the equivalent of.
3) The equivalent is the consonant at that position when starting from the end.
par exemple: «h» et «t» sont équivalents l'un de l'autre parce que «h», «t» sont respectivement en 6e position depuis le début et la fin.
La même procédure est suivie pour trouver l'équivalent de voyelles / chiffres. Vous listez toutes les voyelles ou les chiffres (à partir de 0) dans l'ordre et trouvez l'équivalent.
Ci-dessous, la liste des équivalents de tous les caractères:
b <-> z
c <-> y
d <-> x
f <-> w
g <-> v
h <-> t
j <-> s
k <-> r
l <-> q
m <-> p
n <-> n
a <-> u
e <-> o
i <-> i
0 <-> 9
1 <-> 8
2 <-> 7
3 <-> 6
4 <-> 5
Règles de cryptage
1) Vous commencez à vous déplacer de la gauche et allez vers la droite.
2) Si le caractère est une consonne / un chiffre, alors son équivalent est pris et s'il s'agit d'un espace vide, alors un espace vide est pris.
3) Si le personnage est une voyelle, vous prenez son équivalent et commencez à vous déplacer dans la direction opposée. Par exemple, si vous vous déplacez vers la droite et rencontrez une voyelle, cryptez ce caractère, puis passez au caractère non chiffré le plus à droite et commencez à chiffrer dans la direction gauche, et vice versa.
4) Vous ne devriez pas considérer deux fois un personnage dans la même position. Les étapes doivent être suivies jusqu'à ce que tous les caractères de l'entrée soient couverts.
5) Le nombre total de caractères dans l'entrée (y compris les espaces vides) doit être égal au nombre total de caractères dans la sortie.
Veuillez noter que les caractères cryptés apparaissent dans la sortie dans l'ordre dans lequel ils ont été cryptés.
Permettez-moi maintenant de crypter une chaîne pour vous.
String = "tre d1go3t is"
Moving left to right
"t" -> "h"
"r" -> "k"
"e" -> "o"
Vowel encountered. Now moving right to left.
"s" -> "j"
"i" -> "i"
Vowel encountered. Now moving left to right.
" " -> " "
"d" -> "x"
"1" -> "8"
"g" -> "v"
"o" -> "e"
Vowel encountered. Now moving right to left.
" " -> " "
"t" -> "h"
"3" -> "6"
Output -> "hkoji x8ve h6"
Exemples
"flyspy" -> "wqcjmc"
"hero" -> "toek"
"heroic" -> "toyike"
"ae" -> "uo"
"abe" -> "uoz"
"the space" -> "htoo jmuy"
"a d1g13t" -> "uh68v8x "
"we xi12" -> "fo78i d"
"this is a code" -> "htioj ixej uy "
Vous pouvez également choisir d'utiliser des alphabets majuscules au lieu de minuscules.
Notation
C'est le code-golf , donc le code le plus court gagne!