만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

가장 높은 산

면접 대비

시간 제한1초메모리 제한1024 MB

요약
높이 격자가 주어졌을 때, 인접한 산지 칸이 두 개 이상 모인 산들 중 최고 높이와 최저 높이의 차가 가장 큰 값을 구합니다. 산이 없으면 -1을 출력합니다.
난이도

쉬움10점 중 3점

유형
행렬, BFS, 구현
정답자
아직 제출이 없습니다

문제

지도를 나타내는 직사각형 격자가 주어진다. 각 칸에는 높이를 나타내는 정수 HH가 적혀 있으며, 0≤H≤100000 \le H \le 10000이다. 상하좌우로 바로 인접한 네 칸 중 하나 이상이 그 칸보다 낮으면, 그 칸은 '산지'이다. 바로 인접한 산지 두 개 이상이 모이면 하나의 '산'을 이룬다.

산의 높이는 그 산을 이루는 모든 칸 중 가장 큰 높이와 가장 작은 높이의 차이다. 격자에서 가장 높은 산의 높이를 구하라.

입력

첫 줄에 두 정수 RR과 CC가 주어진다. 1≤R≤1001 \le R \le 100은 행의 수이고, 1≤C≤1001 \le C \le 100은 열의 수이다.

이어지는 RR개의 줄에는 각각 공백 하나로 구분된 CC개의 정수가 주어진다. 이 정수들은 산의 높이를 나타낸다.

출력

가장 높은 산의 높이를 나타내는 정수 하나를 한 줄에 출력한다. 산이 하나도 없으면 −1-1을 출력한다.

예제1

  1. 예제 1

    입력
    6 8
    1 3 3 4 4 4 1 1
    1 4 2 1 1 1 1 1
    1 5 3 1 1 4 1 1
    1 6 5 3 1 7 4 1
    1 3 3 3 1 4 5 1
    1 3 3 1 1 1 1 1
    
    예상 출력
    4