Beginnen wir damit, eine Reflektion eines Zeichens in einem 2D-Array von Zeichen neu zu definieren:
Definieren Sie bei einem quadratischen 2-d-Array von Zeichen mit unterschiedlichen alphabetischen Kleinbuchstaben ein Abbild eines Buchstabens in der Matrix, indem Sie es durch die Mitte des Quadrats mit dem Zeichen direkt gegenüber vertauschen.
So ein Spiegelbild des Buchstabens cin
abcde
fghij
klmno
pqrst
uvwxy
würde in der Konfiguration führen
abwde
fghij
klmno
pqrst
uvcxy
weil die cund die wgeschaltet worden sind.
Einige weitere Beispiele (mit derselben ursprünglichen Konfiguration wie oben):
Das Reflektieren des Charakters
ewürde sich bilden
abcdu
fghij
klmno
pqrst
evwxy
Den Charakter zu reflektieren
mwürde machen
abcde
fghij
klmno
pqrst
uvwxy
Das Reflektieren des Charakters
bwürde sich bilden
axcde
fghij
klmno
pqrst
uvwby
Die Herausforderung
Bei einem 2-d-Array von Zeichen mit unterschiedlichen Kleinbuchstaben durchlaufen Sie jedes Zeichen in einer bestimmten Zeichenfolge und "reflektieren" es in der Matrix.
Erläuterungen: Die Buchstaben in der Zeichenfolge stammen von a-z, die Buchstaben sind eindeutig, und das Array ist mindestens 1x1 und höchstens 5x5 (offensichtlich, da das englische Alphabet nur 26 Zeichen enthält). Die Zeichen in der Zeichenfolge sind garantiert in der 2-d-Anordnung. Die Zeichenfolge ist höchstens 100 Zeichen lang.
Eingang
Eine Zeichenfolge s, eine Ganzzahl Nund dann ein NxNArray von Zeichen.
Beispiel
Eingang:
ac
2
ab
cd
Ausgabe:
dc
ba
* Grund: Reflektiere zuerst das amit dem d. Dann spiegeln Sie das cmit dem, bweil cder zweite Buchstabe in der Eingabezeichenfolge ist.
Wertung
- Die Ausgabe kann auf jede bequeme Weise erfolgen .
- Es ist entweder ein vollständiges Programm oder eine Funktion zulässig. Bei einer Funktion können Sie die Ausgabe zurückgeben, anstatt sie zu drucken.
- Standardlücken sind verboten.
- Dies ist Codegolf, daher gelten alle üblichen Golfregeln, und der kürzeste Code (in Byte) gewinnt.
Aktueller Gewinner
Nals eine Eingabe , wenn wir es nicht brauchen?