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

Задача . A. Пакетики с конфетами


Задача

Темы: реализация *1000

У Геральда есть n младших братьев и так сложилось, что их количество четно. Однажды он купил для них n2 пакетиков конфет. Так получилось, что в одном пакетике оказалась одна конфета, в одном — две конфеты, в одном — три, и так далее. Вообще, для любого целого числа k от 1 до n2 у него оказался ровно один пакетик с k конфетами.

Помогите ему выдать каждому брату по n пакетиков конфет так, чтобы все братья получили одинаковое количество конфет.

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

В единственной строке дано единственное целое число n (n четное, 2 ≤ n ≤ 100) — количество братьев у Геральда.

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

Пусть Геральд пронумерует своих братьев номерами от 1 до n. Вам надо вывести n строк, в i-ой строке нужно вывести n целых чисел — количество конфет в пакетиках, предназначающихся i-тому брату. Конечно, все эти числа должны быть различны и быть в пределах от 1 до n2. Числа в строках можно выводить в любом порядке.

Гарантируется, что при заданных ограничениях решение существует.

Примечание

В примере продемонстрировано, как может действовать Геральд, если у него два брата. В таком случае, в его пакетиках 1, 2, 3 и 4 конфеты. Он может отдать одному брату пакетики с 1 и с 4 конфетами, а другому — пакетики с 2 и 3 конфетами.


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

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

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