Безумие
시간 제한2초메모리 제한1024 MB
창문 격자 안에서 패턴을 놓을 위치를 골라, 상태를 바꿔야 하는 창문이 속한 아파트 수가 최소가 되게 한다.
문제
Сереже очень захотелось сделать что-нибудь безумное. Например, сделать так, что бы на стене дома напротив высветилось какое-нибудь хорошее слово.
Он нарисовал на клетчатом листочке размером карту того, в каких окна должен гореть свет, а в каких нет. Сережа будет считать, что на доме написано слово, если внутри некоторого прямоугольника картина включенных и выключенных окон будет совпадать с этим рисунком, при этом не важно горит свет или нет в остальных окнах.
Для этого ему необходимо в некоторых окнах свет включить, а в некоторых выключить. Однако, чтобы включить или выключить свет в окне, Сереже надо договориться с хозяином квартиры. После этого он сможет произвольным образом включать и выключать свет в любых окнах этой квартиры.
У него есть план дома, и он знает какой квартире принадлежит какое окно. Ему удалось выяснить, что каждой квартире принадлежит несколько соседних окон на одном этаже.
С каким минимальным количеством хозяев надо договориться?
입력
В первой строке входного файла два целых числа и ().
Далее следуют строк по чисел в каждой --- какой квартире принадлежит соответствующее окно. В -ой строке входного файла на -ой позиции стоит номер квартиры, которой принадлежит -ое слева окно на -ом этаже дома. Номера квартир --- целые положительные числа, не превосходящие 5000.
Потом следуют строк по символов в каждой --- <<#>> означает, что свет в соответствующем окне горит, а <<.>>, что нет.
В следующей строке находятся два целых числа и (). Затем следуют строк по символов в каждой --- <<#>> означает, что соответствующее окно должно светиться в Сережином слове, а <<.>>, что не должно.
출력
В выходной файл выведите единственное число --- минимальное число квартир, с хозяевами которых должен договориться Сережа.