Python. Задача 8-7

Заполнить двумерный массив (таблицу) чисел размером M x N, так чтобы числа от 1 до MN шли в нем по возрастанию "ходом быка": "бык" начинает ход в левом верхнем углу и идет по строке направо, затем делает шаг вниз и по второй строке идет справа налево, в третьей строке снова слева направо и т.д. Вывести заполненную таблицу.

Решение
M = 5   # Количество строк таблицы
N = 7   # Количество столбцов таблицы
# Создаем таблицу
a = [[0] * N for i in range(M)]
# Заполняем
for i in range(M):
    for j in range(N):
        if i % 2 == 0:
            # Для четных строк таблицы
            a[i][j] = i * N + j + 1
        else:
            # Для нечетных строк таблицы
            a[i][j] = (i + 1) * N - j
# Выводим
for i in range(M):
    for j in range(N):
        print('%3d' % a[i][j], end = ' ')
    print()