Die Herausforderung
Gegeben eine n x n
Matrix von ganzen Zahlen mitn >= 2
1 2 3 4
und eine Liste von ganzen Zahlen mit genau 2n
Elementen
[1,2, -3, -1]
gibt die gedrehte Matrix aus. Diese Matrix ist folgendermaßen aufgebaut:
- Nehmen Sie die erste Ganzzahl in der Liste und drehen Sie die erste Zeile um diesen Wert nach rechts.
- Nehmen Sie die nächste Ganzzahl und drehen Sie die erste Spalte um diesen Wert nach unten.
- Nehmen Sie die nächste Ganzzahl und drehen Sie die zweite Zeile um diesen Wert usw. nach rechts, bis Sie jede Zeile und Spalte der Matrix einmal gedreht haben.
Die Liste kann negative Ganzzahlen enthalten, was bedeutet, dass Sie die Zeile / Spalte nach links / oben statt nach rechts / unten verschieben. Wenn die Ganzzahl Null ist, drehen Sie die Zeile / Spalte nicht.
Beispiel mit der obigen Eingabe
Listenelement Matrix Erläuterung -------------------------------------------------- ---------- 1 2 1 1. Reihe um 1 nach rechts drehen 3 4 2 2 1 Drehen Sie die 1. Säule um 2 nach unten 3 4 -3 2 1 2. Reihe links um 3 drehen 4 3 -1 2 3 Drehen Sie die 2. Säule um 1 nach oben 4 1
Regeln
- Sie können das bequemste Eingabeformat auswählen. Stellen Sie einfach klar, welches Sie verwenden.
- Funktion oder Vollprogramm erlaubt.
- Standardregeln für die Eingabe / Ausgabe.
- Es gelten Standardlücken .
- Dies ist Code-Golf , also gewinnt die niedrigste Byte-Anzahl. Tiebreaker ist eine frühere Vorlage.
Testfälle
Das Eingabeformat ist hier eine Liste von Listen für die Matrix und eine normale Liste für die ganzen Zahlen.
[[1,2], [3,4], [1,2, -3, -1] -> [[2,3], [4,1]] [[1,2], [3,4], [1,1,1,1] -> [[3,2], [4,1]] [[1,2], [3,4], [0,0,0,0] -> [[1,2], [3,4]] [[1,2, -3], [- 4,5,6], [7, -8,0], [1, -2,0, -1,3,4] -> [7, 5,0], [- 3, -8,2], [- 4,1,6]] [[1,2, -3], [- 4,5,6], [7, -8,0]], [3,12, -3,0, -6, -3] -> [[1 , 2, -3], [- 4,5,6], [7, -8,0]]
Viel Spaß beim Codieren!