Aufgabe
Geben Sie bei zwei gegebenen Zeichenlisten ihr kartesisches Produkt aus, dh die Liste der Paare jedes Buchstabens aus der ersten Liste mit jedem Buchstaben aus der zweiten Liste.
Beispiel
"123456"
und "abcd"
gib:
[["1","a"],["1","b"],["1","c"],["1","d"],["2","a"],["2","b"],["2","c"],["2","d"],["3","a"],["3","b"],["3","c"],["3","d"],["4","a"],["4","b"],["4","c"],["4","d"],["5","a"],["5","b"],["5","c"],["5","d"],["6","a"],["6","b"],["6","c"],["6","d"]]
Eingang
Zwei Listen mit Zeichen oder Zeichenfolgen. Die verwendeten Zeichen sind alphanumerisch a-z, A-Z, 0-9
und ein Zeichen kann sowohl mehrfach als auch in beiden Eingaben gleichzeitig vorkommen.
Ausgabe
Das kartesische Produkt der Eingabelisten. Das heißt, eine Liste jedes möglichen geordneten Paars eines Zeichens aus der ersten Liste und eines Zeichens aus der zweiten Liste. Jedes Paar ist eine Liste oder Zeichenfolge oder Ähnliches mit zwei Zeichen oder zwei Zeichenfolgen mit der Länge eins. Die Länge der Ausgabe entspricht dem Produkt der Länge der Eingaben.
Die Paare müssen der Reihe nach aufgelistet sein. erstes Auflisten des ersten Zeichens der ersten Liste mit dem ersten der zweiten Liste, gefolgt von allen Paarungen des ersten Zeichens der ersten Liste. Das letzte Paar besteht aus dem letzten Zeichen der ersten Liste und dem letzten Zeichen der zweiten Liste.
Die Ausgabe muss eine flache Liste von Paaren sein. keine 2D-Matrix, in der Paare nach ihrem ersten oder zweiten Element gruppiert sind.
Testfälle
inputs output
"123456", "abcd" [["1","a"],["1","b"],["1","c"],["1","d"],["2","a"],["2","b"],["2","c"],["2","d"],["3","a"],["3","b"],["3","c"],["3","d"],["4","a"],["4","b"],["4","c"],["4","d"],["5","a"],["5","b"],["5","c"],["5","d"],["6","a"],["6","b"],["6","c"],["6","d"]]
"abc", "123" [["a","1"],["a","2"],["a","3"],["b","1"],["b","2"],["b","3"],["c","1"],["c","2"],["c","3"]]
"aa", "aba" [["a","a"],["a","b"],["a","a"],["a","a"],["a","b"],["a","a"]]
["1a", "1b", "1c", "2a", "2b", "2c", "3a", "3b", "3c"]
Ist das Ausgabeformat gültig?
code-golf
kürzeste Antwort markiert . Im Falle eines Unentschieden ist die erste Antwort, die diese Punktzahl erreicht, normalerweise der Gewinner (derzeit diese ). Nehmen Sie sich wenigstens ein paar Tage Zeit, bevor Sie eine Antwort annehmen, wenn überhaupt. Und siehe hier für Richtlinien auf Ihre eigene Frage zu beantworten.