Олимпиадный тренинг

Задача . J. Посадка деревьев


Задача

Темы: Конструктив *1800

Вася — активист общества охраны природы Greencode. Однажды, он нашел пустое никому не нужное поле, разбил его на n × m клеток, и решил посадить там лес. Вася посадит nm деревьев всех различных высот от 1 до nm. Чтобы его лес выглядел естественнее, он хочет, чтобы для любых двух деревьев, которые растут в соседних по стороне клетках, модуль разности высот был строго больше 1. Помогите Васе: составьте план посадки леса, для которого выполняется данное условие.

Входные данные

В первой строке через пробел записано два целых числа n и m (1 ≤ n, m ≤ 100) — количество строк и столбцов в Васином поле.

Выходные данные

Если решения не существует, выведите -1. Иначе выведите n строк по m чисел — план посадки деревьев. В каждой клетке плана должна быть записана высота дерева, которое нужно посадить в эту клетку. Если решений несколько, выведите любое.


Примеры
Входные данныеВыходные данные
1 2 3
3 6 2
5 1 4
2 2 1
-1

time 2000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя