Eingang:
- Ein Array mit drei ganzen Zahlen:
0
,1
und2
in beliebiger Reihenfolge (dh[2, 0, 1]
) - Und eine Zeichenfolge mit einer Länge> = 2, die nur alphabetische Buchstaben (sowohl Groß- als auch Kleinbuchstaben) und Ziffern (dh
a1B2c3
) enthält.
Ausgabe:
Basierend auf dem Array sortieren wir den String und geben ihn aus.
Wie funktioniert das?
- Die Anordnung gibt die Reihenfolge der Priorität
a-z
,A-Z
und0-9
, wobei die ersten0
; zweites Wesen1
; und drittes Wesen2
. - Darauf aufbauend können dann die einzelnen Zeichen des Strings geordnet werden.
Beispiel:
- Array:
[2, 0, 1]
- Zeichenfolge:
a1B2c3
Aufgrund des Arrays wissen wir, dass unsere Reihenfolge Vorrang hat 0-9a-zA-Z
.
Auf dieser Basis können wir die Zeichenfolge konvertieren und Ausgang: 123acB
.
Herausforderungsregeln:
- Für das Array können Sie zwischen einer 0-indizierten und einer 1-indizierten Eingabe wählen. Dies
[3, 1, 2]
ist auch eine gültige Eingabe, wenn Sie 1-indizierte Arrays bevorzugen. - Die Zeichenfolge (Eingang und Ausgang) enthält nur gültige Zeichen:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
. - Wenn Ihre Sprache Arrays nicht unterstützt (oder wenn Sie wählen), können Sie Strings anstelle von Arrays für den ersten Parameter (dh
012
,[0,1,2]
usw.).
Allgemeine Regeln:
- Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes.
Lassen Sie sich von Code-Golf-Sprachen nicht davon abhalten, Antworten mit Nicht-Codegolf-Sprachen zu veröffentlichen. Versuchen Sie, für jede Programmiersprache eine möglichst kurze Antwort zu finden. - Für Ihre Antwort gelten Standardregeln. Daher dürfen Sie STDIN / STDOUT, Funktionen / Methode mit den richtigen Parametern und vollständige Programme verwenden. Ihr Anruf.
- Standardlücken sind verboten.
- Fügen Sie nach Möglichkeit einen Link mit einem Test für Ihren Code hinzu.
- Fügen Sie ggf. auch eine Erklärung hinzu.
Testfälle:
[2, 0, 1] & a1B2c3 -> 123acB
[2, 1, 0] & aAaA909UuHWw9gh2 -> 02999AAHUWaaghuw
[2, 1, 0] & 6Bx43 -> 346Bx
[1, 0, 2] & jfjf33g -> ffgjj33
[0, 2, 1] & AbC13 -> b13AC
[1, 2, 0] & Qfl0l -> Q0fll
[0, 1, 2] & 9870abcABC -> abcABC0789
[0, 2, 1] & test123 -> estt123
[2, 0, 1] & WHAT -> AHTW
[2, 0, 1] & WhAt -> htAW
[1, 0, 2] & 102BACbac -> ABCabc012
123
, 012
, [0,1,2]
, [0, 1, 2]
, 0;1;2
oder was immer Sie bevorzugen.
"123"
ein gültiges Format für den ersten Parameter?