아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Огород Марио

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

요약
r x c 격자의 n개 세포에서 시작해 매초 상하좌우로 감염이 퍼질 때, 모든 칸이 감염되는 최소 시간을 구한다.
난이도

보통10점 중 7점

유형
BFS, 이분 탐색, 기하
정답자
아직 제출이 없습니다

문제

Позади много хороших дел: Марио уже спас принцессу, выиграл гонки и подарил подарок Луиджи. Конечно же, впереди ещё больше хороших дел, однако сейчас наш герой отправляется в заслуженный отпуск! Марио --- русский человек, а потому он решил провести отпуск в своем любимом огороде.

Огород представляет собой прямоугольник r×cr \times c, разделенный на rcrc единичных клеток. Строки огорода пронумерованы целыми числами от 11 до rr в направлении с севера на юг, а столбцы пронумерованы целыми числами от 11 до cc в направлении с запада на восток. Марио решил посадить у себя в огороде картошку. Он уже выбрал nn клеток и посадил по клубню в каждую из них.

Не успел Марио налить себе кружечку кваса в ожидании урожая, как из ниоткуда появился Боузер и превратил каждый посаженный клубень в гриб Гумба! Как известно, эти грибы очень быстро распространяются. Назовем клетку зараженной, если в ней уже появился Гумба. В момент превращения все клетки, в которые была посажена картошка, становятся зараженными. После этого каждую секунду происходит заражение новых клеток: каждая клетка, соседняя по стороне хотя бы с одной зараженной клеткой, тоже становится зараженной. Обратите внимание, что если клетка однажды была заражена, она будет зараженной все оставшееся время с этого момента.

Разумеется, Марио просто так не одолеть, и у него есть специальное средство против грибов Гумба, однако прежде чем уничтожить все грибы и заново посадить картошку, Марио заинтересовал вопрос: через сколько секунд впервые после момента превращения все клетки огорода будут заражены. Марио быстро смог ответить на свой же вопрос, попытайтесь и вы за ним поспеть.

입력

Первая строка входных данных содержит два целых числа rr и cc --- размеры огорода Марио (1≤r,c≤1081 \le r, c \le 10^8). Вторая строка входных данных содержит единственное целое число nn --- количество посаженных клубней (1≤n≤15,0001 \le n \le 15\\,000). Следующие nn строк описывают клетки, в которые была посажена картошка. Каждая из них содержит два целых числа x_ix\_i и y_iy\_i --- номер строки и столбца, на пересечении которых находится очередная клетка, в которую Марио посадил очередной клубень (1≤x_i≤r1 \le x\_i \le r, 1≤y_i≤c1 \le y\_i \le c). Гарантируется, что все эти клетки различны.

출력

Выведите единственное целое число --- минимальное время в секундах, через которое все клетки огорода будут заражены. Если все клетки огорода будут заражены уже в момент превращения, выведите число 00.

힌트

Иллюстрация к тесту из примера: на каждой из четырех картинок изображено, какие клетки заражены через соответствующее количество секунд после момента превращения. Белым цветом закрашены еще не зараженные клетки, а серым --- зараженные, причем чем темнее цвет клетки, тем раньше она была заражена. Строки пронумерованы сверху вниз, а столбцы --- слева направо.

예제1

  1. 예제 1

    입력
    3 4
    2
    1 2
    3 4
    
    예상 출력
    3