문제 설명
JOI 군은 그림판 프로그램을 가지고 놀고 있다.
그림판 프로그램에서는 세로 $H$ 행, 가로 $W$ 열의 직사각형 격자판에 그림을 그릴 수 있다. 각 칸에는 색이 정해져 있으며, 색은 $1$ 이상 $10^9$ 이하의 정수로 나타내어진다.
위에서부터 $i$ 번째 행 ($1 \le i \le H$), 왼쪽에서부터 $j$ 번째 열 ($1 \le j \le W$)에 있는 칸을 칸 $(i,j)$ 라고 부른다. 현재 칸 $(i,j)$ 의 색은 $A_{i,j}$ 이다.
칸 $(i,j)$ 에서 변을 맞대고 있는 칸으로의 이동을 반복하여, 칸 $(i,j)$ 와 색이 다른 칸으로 들어가지 않고 이동할 수 있는 칸들의 모임을 여기서는 칸 $(i,j)$ 의 영역이라고 부른다.
그림판 프로그램에는 채우기라는 기능이 있다. 이 기능에서는 어떤 칸 $(x,y)$ ($1 \le x \le H$, $1 \le y \le W$)와 색 $c$ ($1 \le c \le 10^9$)를 지정하면, 칸 $(x,y)$ 의 영역에 포함된 칸들의 색이 모두 $c$ 로 변한다.
JOI 군은 어떤 칸 $(x,y)$ 와 색 $c$ 를 고르고, 그 칸과 색을 지정하여 채우기를 정확히 $1$ 번 사용한다. 채우기를 사용한 후 칸 $(x,y)$ 의 영역에 포함된 칸의 개수가 JOI 군의 점수가 된다.
JOI 군의 점수로 달성 가능한 최댓값을 구하는 프로그램을 작성하라.
입력
입력은 다음 형식으로 주어진다.
H W
A_{1,1} A_{1,2} \ldots A_{1,W}
A_{2,1} A_{2,2} \ldots A_{2,W}
:
A_{H,1} A_{H,2} \ldots A_{H,W}출력
JOI 군의 점수로 달성 가능한 최댓값을 $1$ 줄에 출력하라.
제한
- $1 \le H \le 500$.
- $1 \le W \le 500$.
- $1 \le A_{i,j} \le 10^9$ ($1 \le i \le H$, $1 \le j \le W$).
- 입력되는 값은 모두 정수이다.
서브태스크
- ($9$ 점) $H = 1$.
- ($32$ 점) $H \le 30$, $W \le 30$, $A_{i,j} \le 5$ ($1 \le i \le H$, $1 \le j \le W$).
- ($18$ 점) $H \le 30$, $W \le 30$.
- ($10$ 점) $A_{i,j} \le 2$ ($1 \le i \le H$, $1 \le j \le W$).
- ($31$ 점) 추가 제한 없음.
입출력 예제
입력 예제 1
4 4 1 2 3 1 2 2 3 1 1 2 3 1 3 3 2 2
출력 예제 1
9
처음 시점에 칸 $(2,2)$ 의 영역에 포함된 칸은 칸 $(1,2), (2,1), (2,2), (3,2)$ 의 $4$ 개이다. 따라서 칸 $(2,2)$ 와 색 $3$ 을 지정하여 채우기를 사용하면, 아래 그림과 같이 이 $4$ 개 칸의 색이 $3$ 으로 변한다.

채우기를 사용한 후, 칸 $(2,2)$ 의 영역에 포함된 칸은 칸 $(1,2), (1,3), (2,1), (2,2), (2,3), (3,2), (3,3), (4,1), (4,2)$ 의 $9$ 개가 된다. 따라서 JOI 군의 점수는 $9$ 가 된다.
JOI 군의 점수를 $10$ 이상으로 만들 수는 없으므로, $9$ 를 출력한다.
이 입력은 서브태스크 $2, 3, 5$ 의 제한을 만족한다.
입력 예제 2
2 10 1 2 2 1 3 3 3 3 1 1 1 1 1 1 1 1 1 3 3 3
출력 예제 2
18
이 입력은 서브태스크 $2, 3, 5$ 의 제한을 만족한다.
입력 예제 3
5 5 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
출력 예제 3
25
이 입력은 서브태스크 $2, 3, 4, 5$ 의 제한을 만족한다.