На кружке ФИСТ по подготовке к олимпиадам по программированию занимаются N = 4K школьников. Так как лучшая подготовка — практика, Владимир решил составить для них расписание решения задач на ближайшие N дней.
При этом Владимир решил соблюсти следующие условия:
- Каждый из школьников по прошествии N дней должен решить одинаковое число задач;
- В каждый из дней всеми школьниками суммарно должно решаться одинаковое число задач;
- Ни один школьник не должен решать меньше 1 или больше N2 задач в день;
- Количества задач, решённые любым школьником в любой день, не должны повторяться дважды.
Запутались? Проще говоря, Владимиру нужно составить «магический квадрат» размера N × N, заполненный числами от 1 до N2.
К счастью, при N = 4K есть простой способ решить эту задачу. Выделите в квадрате «углы» размером K × K и «центр» размером 2K × 2K (см. рисунок). Напишите в выделенных клетках числа, которые стояли бы в них, если бы квадрат заполнялся сверху вниз и слева направо. В оставшиеся клетки впишите числа, которые стояли бы в них, если бы квадрат заполнялся снизу-вверх и справа налево.
Помогите Владимиру справиться с задачей.