Eingang:
- Ein Array mit drei ganzen Zahlen:
0,1und2in 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-Zund0-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;2oder was immer Sie bevorzugen.
"123"ein gültiges Format für den ersten Parameter?