목장 건설하기

나무와 돌이 장애물로 놓인 M 곱하기 N 격자에서 장애물을 포함하지 않는 가장 큰 정사각형 부분 격자의 한 변 길이를 구한다.

보통5동적 계획법행렬배열누적 합면접 대비아직 제출이 없습니다시간 제한1초메모리 제한512 MB

문제

랜드 씨는 퇴직금으로 땅을 사서 목장을 지으려 한다. 소개받은 땅은 직사각형이고 대부분 들판이지만, 베기 어려운 나무와 치울 수 없는 바위가 여기저기 섞여 있다.

목장은 정사각형 하나로 짓고, 그 안에는 나무도 바위도 없어야 한다. 랜드 씨는 이 정사각형을 가능한 한 크게 잡으려고 한다.

땅의 세로 길이가 MM미터, 가로 길이가 NN미터일 때 1미터 간격의 격자로 나누어 M×NM \times N 행렬로 나타낸다. 행렬의 원소 0은 들판, 1은 나무, 2는 바위를 뜻한다.

지을 수 있는 가장 큰 정사각형 목장의 한 변 길이 LL을 구하라. 들판 칸이 하나도 없으면 LL은 0이다.

입력

첫째 줄에 MMNN이 공백으로 구분되어 주어진다.

다음 MM개 줄에는 각 줄마다 NN개의 정수가 공백으로 구분되어 주어진다. 각 값은 0, 1, 2 중 하나이다.

  • 1M10001 \le M \le 1000
  • 1N10001 \le N \le 1000

출력

가장 큰 정사각형 목장의 한 변 길이 LL을 한 줄에 출력한다.