Le défi
Étant donné une n x n
matrice d'entiers avecn >= 2
1 2 3 4
et une liste d'entiers avec exactement des 2n
éléments
[1,2, -3, -1]
sortie de la matrice tournée. Cette matrice est construite de la manière suivante:
- Prenez le premier entier de la liste et faites pivoter la première ligne vers la droite de cette valeur.
- Prenez l'entier suivant et faites pivoter la première colonne vers le bas de cette valeur.
- Prenez l'entier suivant et faites pivoter la deuxième ligne vers la droite de cette valeur, etc. jusqu'à ce que vous ayez fait pivoter une fois chaque ligne et colonne de la matrice.
La liste peut contenir des entiers négatifs, ce qui signifie que vous déplacez la ligne / colonne vers la gauche / vers le haut au lieu de la droite / vers le bas. Si l'entier est zéro, ne faites pas pivoter la ligne / colonne.
Exemple utilisant l'entrée ci-dessus
Élément de liste Matrice Explication -------------------------------------------------- ---------- 1 2 1 Tournez la 1ère rangée vers la droite de 1 3 4 2 2 1 Tournez la 1ère colonne vers le bas de 2 3 4 -3 2 1 Faire pivoter la 2e rangée vers la gauche de 3 4 3 -1 2 3 Faites pivoter la 2e colonne de 1 vers le haut 4 1
Règles
- Vous pouvez choisir le format d'entrée le plus convenable. Indiquez simplement lequel vous utilisez.
- Fonction ou programme complet autorisé.
- Règles par défaut pour les entrées / sorties.
- Des échappatoires standard s'appliquent.
- Il s'agit de code-golf , donc le nombre d'octets le plus bas l'emporte. Tiebreaker est une soumission antérieure.
Cas de test
Le format d'entrée est ici une liste de listes pour la matrice et une liste normale pour les entiers.
[[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]]
Codage heureux!