Соревнование
Дана n x n
матрица целых чисел сn >= 2
1 2 3 4
и список целых чисел с точно 2n
элементами
[1,2, -3, -1]
вывести повернутую матрицу. Эта матрица строится следующим образом:
- Возьмите первое целое число в списке и поверните первую строку вправо на это значение.
- Возьмите следующее целое число и поверните первый столбец вниз на это значение.
- Возьмите следующее целое число и поверните вторую строку вправо на это значение и т. Д., Пока не повернете каждую строку и столбец матрицы один раз.
Список может содержать отрицательные целые числа, что означает, что вы перемещаете строку / столбец влево / вверх вместо вправо / вниз. Если целое число равно нулю, не вращайте строку / столбец.
Пример использования ввода выше
Элемент списка Матрица Объяснение -------------------------------------------------- ---------- 1 2 1 Поверните 1-й ряд вправо на 1 3 4 2 2 1 Поверните 1-ую колонку вниз на 2 3 4 -3 2 1 Повернуть 2-й ряд влево на 3 4 3 -1 2 3 Повернуть 2-ую колонку вверх на 1 4 1
правила
- Вы можете выбрать наиболее удобный формат ввода. Просто дайте понять, какой вы используете.
- Функция или полная программа разрешены.
- Правила по умолчанию для ввода / вывода.
- Применяются стандартные лазейки .
- Это код-гольф , поэтому выигрывает меньшее количество байт. Tiebreaker является более ранним представлением.
Контрольные примеры
Формат ввода здесь представляет собой список списков для матрицы и обычный список для целых чисел.
[[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]]
Удачного кодирования!