eolymp
bolt
Try our new interface for solving problems
Məsələlər

Блокада

Блокада

Государство Флатландия представляет собой прямоугольник размером , состоящий из единичных квадратиков. Флатландия разделена на \textbf{K} провинций (\textbf{2} ≤ \textbf{K} ≤ \textbf{100}). Каждая провинция представляет собой связное множество квадратиков, т.е. из каждой точки провинции можно дойти до любой другой ее точки, при этом разрешается переходить с квадратика на квадратик, только если они имеют общую сторону (общей вершины недостаточно). Во Флатландии нет точки, которая граничила бы более чем с тремя провинциями (т.е. четыре квадратика, имеющие общую вершину, не могут принадлежать четырем разным провинциям). Каждая провинция имеет свой символ. Столица Флатландии находится в провинции, которой принадлежит символ \textbf{A} (заглавная латинская буква \textbf{A}). Провинция называется пограничной, если она содержит граничные квадратики. Провинция, в которой находится столица Флатландии, не является пограничной. Король соседнего с Флатландией королевства Ректилания решил завоевать Флатландию. Для этого он хочет захватить столицу Флатландии. Однако он знает, что сил его армии недостаточно, чтобы сделать это сразу. Поэтому сначала он хочет окружить столичную провинцию, чтобы ослабить силы противника долгой блокадой, а потом захватить столицу. Чтобы окружить провинцию, требуется захватить все провинции, с которыми она граничит. Две провинции граничат, если существует два квадратика, имеющие общую сторону, один из которых принадлежит первой из них, а другой -- второй. Чтобы захватить провинцию, надо чтобы выполнялось одно из двух условий: либо она пограничная, либо граничит с какой-либо уже захваченной провинцией. Чтобы сберечь силы своей армии, король Ректилании хочет установить блокаду столичной провинции, захватив как можно меньше провинций. Помогите ему выяснить, сколько провинций требуется захватить. Захватывать столичную провинцию нельзя, поскольку для этого сил армии Ректилании пока недостаточно. \InputFile Первая строка содержит \textbf{M} и \textbf{N} (\textbf{3} ≤ \textbf{M}, \textbf{N} ≤ \textbf{200}). Следующие \textbf{M} строк содержат \textbf{N} символов каждая и задают карту Флатландии. Символ, находящийся в \textbf{i+1}-й строке входного файла на \textbf{j}-м месте, представляет собой символ провинции, которой принадлежит квадратик (\textbf{i}, \textbf{j}). Все символы имеют \textbf{ASCII}-код больше \textbf{32} (пробела). \OutputFile Выведите в выходной файл единственное число -- количество провинций, которые требуется захватить. Если установить блокаду невозможно, выведите "\textbf{--1}".
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 64 MiB
Giriş verilənləri #1
5 6
BBBBBZ
BCCCBZ
BCAbbZ
BDDDbZ
�����Z
Çıxış verilənləri #1
4