Здоровое питание

아직 제출이 없습니다시간 제한4초메모리 제한1024 MB

문제

План студенческого городка некоторого университета представляет собой квадрат n×nn \times n, в каждой клетке которого расположено здание. Здания соединены переходами, если они расположены в клетках, имеющих общую сторону. В левом верхнем углу квадрата расположено студенческое общежитие. В правом нижнем углу расположен учебный корпус.

В каждом из зданий, включая общежитие и учебный корпус, расположен автомат, торгующий ровно одним продуктом, например, только кофе или только пирожками с мясом. Студенты каждый день ходят из общежития в учебный корпус по переходам, выбирая один из кратчайших путей.

Руководство университета заинтересовалось разнообразием питания студентов, покупающих продукты в автоматах по ходу движения. Для каждого автомата A_i,jA\_{i,j} планируется найти кратчайший путь из общежития в учебный корпус, проходящий через этот автомат и содержащий как можно больше автоматов, торгующих тем же самым продуктом, что и автомат A_i,jA\_{i,j}. Количество таких автоматов на этом пути называется избыточностью автомата A_i,jA\_{i,j}. При этом автомат A_1,1A\_{1,1} находится в общежитии, а автомат A_n,nA\_{n,n} --- в учебном корпусе.

Требуется написать программу, которая по информации о продуктах, продаваемых автоматами, для каждого из чисел в диапазоне от 11 до 2n12n - 1 определяет число автоматов с таким значением избыточности.

입력

Первая строка входного файла содержит целое число nn (2n15002 \leqslant n \leqslant 1500). Следующие nn строк содержат по nn чисел в каждой. В ii-й из этих строк jj-е число соответствует номеру продукта, продающегося в автомате A_i,jA\_{i,j}. Номера продуктов находятся в диапазоне от 11 до n2n^2.

출력

Выходной файл должен содержать (2n1)(2n-1) целых чисел --- количество автоматов с избыточностями 1,2,,2n11, 2, \ldots, 2n - 1 соответственно.