eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Неоптимальное назначение

Неоптимальное назначение

Возможно, Вы слышали о задаче о назначениях, которая звучит следующим образом. Имеется n × n матрица целых чисел. Из нее следует выбрать n элементов так, чтобы в каждой строке и каждом столбце был выбран в точности один элемент, а сумма выбранных элементов была минимально возможной.

Маленький Мини слышал о задаче и думает что она может быть решена так называемым "жадным алгоритмом". То есть она думает что можно взять наименьший элемент из первой строки, потом наименьший элемент со второй строки, не принадлежащий уже использованной колонке, и так далее. Если в некоторой строке имеется несколько допустимых наименьших элементов, то берется тот, который находится в меньшем столбце.

Ее брат Макси понимает, что это не так. Для доказательства он хочет построить матрицу, для которой алгоритм Мини не будет оптимальным. Помогите ему сделать это.

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

Одно число n (2n100).

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

Вывести целочисленную матрицу n × n, на котором алгоритм Мини даст не оптимальное решение. Если такой матрицы не существует, вывести "Impossible". Матрица должна содержать только неотрицательные числа, не превышающие 100.

Лимит времени 1 секунда
Лимит использования памяти 128 MiB
Входные данные #1
2
Выходные данные #1
0 1
1 3
Источник 2004 Петрозаводск, Лето, Контест Андрея Станкевича 7, Август 22, Задача А