파인애플 농사

바깥을 높이 0으로 두는 격자에서, 어떤 기준 h에 대해 경계가 모두 h보다 높은 이웃으로 둘러싸인 가장 큰 연결된 물웅덩이의 넓이를 구한다.

어려움8유니온 파인드BFSDFS시뮬레이션아직 제출이 없습니다시간 제한2초메모리 제한256 MB

문제

파인애플은 열대 과일로 자라는 데 많은 비가 필요하다. 병찬이는 피자에 올릴 파인애플을 얻기 위해 비가 많이 오는 열대 지역의 산 하나를 통째로 샀다.

산 전체에 파인애플을 심으려는데 문제가 생겼다. 비가 너무 많이 오면 산에 커다란 물웅덩이가 생길 수 있고 파인애플이 물에 잠기면 기를 수 없다. 병찬이는 이 산에서 가장 큰 웅덩이를 찾으려 한다.

다음 조건을 모두 만족하는 칸들의 집합을 웅덩이라고 한다.

  1. 산은 가로 WW칸, 세로 HH칸으로 이루어지며 각 칸의 높이는 11 이상 10910^9 이하의 정수이다. 산 바깥의 모든 높이는 00이라고 가정한다.

  2. 웅덩이에 속한 칸들은 서로 연결되어 있다. 연결되었다는 것은 상하좌우로 인접한 이동만으로 서로 도달할 수 있다는 뜻이며 대각선 접촉은 연결로 치지 않는다.

  3. 다음을 만족하는 정수 hh가 존재한다.

    • 웅덩이의 모든 칸의 높이는 hh 이하이다.
    • 웅덩이에 속하지 않으면서 웅덩이와 상하좌우로 인접한 모든 칸의 높이는 h+1h+1 이상이다.

입력

첫째 줄에 산의 세로 크기 HH와 가로 크기 WW가 주어진다. (1H,W10001 \le H, W \le 1000)

둘째 줄부터 HH개의 줄에 걸쳐 각 줄에 WW개의 수가 주어진다.

i+1i+1번째 줄 (1iH1 \le i \le H)의 jj번째 수는 산의 iijj열 칸의 높이를 나타낸다.

출력

산에 존재하는 가장 큰 웅덩이의 크기를 출력한다. 칸 수로 잰 크기이며 웅덩이가 하나도 없으면 00을 출력한다.

힌트

회색으로 칠한 부분이 최대 크기의 웅덩이다.

87668
98549
72375
95623
99641