Ctrl K

Прокрутка сетки

Лёгкая
Дана сетка grid из m строк и n столбцов и целое число steps. Представьте, что клетки сетки прочитаны построчно, как текст, и замкнуты в кольцо: за последней клеткой строки идёт первая клетка следующей строки, а за самой последней клеткой сетки — самая первая. За один шаг каждое число переходит в следующую клетку этого кольца: - из grid[i][j] в grid[i][j + 1], если это не последний столбец; - из grid[i][n - 1] в grid[i + 1][0]; - из grid[m - 1][n - 1] в grid[0][0]. Верните сетку после steps шагов.
Пример 1
grid=[[1, 2], [3, 4], [5, 6]], steps=1 → [[6, 1], [2, 3], [4, 5]]

Каждое число сдвигается на одну клетку вправо, 2 и 4 переходят в начало следующей строки, а 6 из последней клетки — в самую первую.

Пример 2
grid=[[1, 2, 3], [4, 5, 6]], steps=3 → [[4, 5, 6], [1, 2, 3]]

Три шага в сетке шириной 3 — это ровно сдвиг на одну строку вниз, строки меняются местами.

Пример 3
grid=[[7, -7]], steps=4 → [[7, -7]]

В сетке две клетки, каждые два шага всё возвращается на место — после четырёх шагов сетка прежняя.

Ограничения
  • 1 ≤ m, n ≤ 50
  • -1000 ≤ grid[i][j] ≤ 1000
  • 0 ≤ steps ≤ 100
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПереложить в другой лоток ЛёгкаяЗеркало и негатив ЛёгкаяСтроки становятся столбцами ЛёгкаяПод ударом ладьи ЛёгкаяЧем кончилась партия в крестики-нолики Лёгкая
загружаем Python…
Вход
grid=[[1, 2], [3, 4], [5, 6]], steps=1
Ожидается
[[6, 1], [2, 3], [4, 5]]

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 83 теста на сервере, включая скрытые.