Herausforderung
Die Herausforderung besteht darin, eine bestimmte Zeichenfolge mit den unten angegebenen Regeln zu verschlüsseln. Die Zeichenfolge enthält nur Kleinbuchstaben , Ziffern und / oder Leerzeichen .
Äquivalent eines Zeichens
Zunächst müssten Sie wissen, wie Sie das "Äquivalent" der einzelnen Zeichen finden.
Wenn der Charakter ein Konsonant ist, ist dies der Weg, um seine Entsprechung zu finden:
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.
Beispiel: 'h' und 't' sind Äquivalente voneinander, weil 'h' und 't' sich vom Anfang bzw. Ende an an der sechsten Position befinden.
Das gleiche Verfahren wird angewendet, um das Äquivalent von Vokalen / Ziffern zu finden. Sie listen alle Vokale oder Ziffern (beginnend mit 0) der Reihe nach auf und finden das Äquivalent.
Nachstehend finden Sie eine Liste der Entsprechungen aller Zeichen:
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
Verschlüsselungsregeln
1) Sie bewegen sich von links nach rechts.
2) Wenn das Zeichen ein Konsonant / eine Ziffer ist, wird sein Äquivalent genommen, und wenn es ein Leerzeichen ist, wird ein Leerzeichen genommen.
3) Wenn der Charakter ein Vokal ist, nimmst du das Äquivalent und bewegst dich in die entgegengesetzte Richtung. Wenn Sie sich zum Beispiel nach rechts bewegen und auf einen Vokal stoßen, verschlüsseln Sie dieses Zeichen. Wechseln Sie dann zum am weitesten rechts befindlichen unverschlüsselten Zeichen und beginnen Sie mit der Verschlüsselung in der linken Richtung und umgekehrt.
4) Sie sollten einen Charakter nicht zweimal an derselben Position betrachten. Die Schritte sollten befolgt werden, bis alle Zeichen in der Eingabe abgedeckt sind.
5) Die Gesamtzahl der Zeichen in der Eingabe (einschließlich Leerzeichen) sollte der Gesamtzahl der Zeichen in der Ausgabe entsprechen.
Bitte beachten Sie, dass die verschlüsselten Zeichen in der Ausgabe in der Reihenfolge angezeigt werden, in der sie verschlüsselt wurden.
Lassen Sie mich jetzt eine Zeichenfolge für Sie verschlüsseln.
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"
Beispiele
"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 "
Sie können auch Großbuchstaben anstelle von Kleinbuchstaben verwenden.
Wertung
Das ist Code-Golf , also gewinnt der kürzeste Code!