编程题
### 问题描述
小蓝特别喜爱阶梯图案,阶梯图案可以看做是由若干个大小和颜色都相同的方格组成的,对于大小为 $N$ 的阶梯图案,包含了 $N$ 个连续的列,其中第 $i$ 列恰好有 $i$($1\le i\le N$)个方格,将这 $N$ 列的底部对齐后便组成了一个阶梯图案,将其按照 $90$ 度旋转若干次后仍是阶梯图案,下图展示了几个不同大小的阶梯图案:

小蓝有一块大小为 $H\times H$ 的布匹,由 $H\times H$ 个大小相同的方格区域组成,每一个方格都有自己的颜色。小蓝可以沿着方格的边缘对布匹进行裁剪,他想要知道自己能得到的最大的同色阶梯图案的大小是多少?
### 输入描述
输入的第一行包含一个整数 $H$ 表示布匹大小。
接下来输入 $H$ 行,每行包含 $H$ 个整数,相邻的整数之间使用一个空格分隔,表示每个方格的颜色。
### 输出描述
输出一行包含一个整数表示答案。
### 样例输入
```text
5
0 2 1 1 0
0 0 2 2 0
0 0 1 1 1
0 0 1 1 1
2 1 1 0 2
```
### 样例输出
```text
3
```
### 样例说明
如下图所示,最大的同色阶梯图案用红色边框标出。

### 评测用例规模
对于 $30\\%$ 的评测用例, $1\le H\le 10$;
对于 $60\\%$ 的评测用例, $1\le H\le 100$;
对于所有评测用例, $1\le H\le 1000$ , $0\le $方格颜色$\le 10$ 。