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

Турист в Севастополе

Турист в Севастополе

\textit{Легендарный Севастополь,} \textit{Неприступный для врагов.} \textit{Севастополь, Севастополь --} \textit{Гордость русских моряков…} \includegraphics{https://static.e-olymp.com/content/d1/d1f2a608b321ee8187f8fb59227327efc8e606c3.jpg} Севастополь (старогреческое - Херсонес) -- город государственного значения Украины, город-герой. Расположен на юго-западе Крымского полуострова, на берегу Черного моря, исторический центр Севастополя расположен на южной стороне Севастопольской бухты. В Севастополе очень большое количество достопримечательных мест: город Херсонес, памятник затопленным кораблям, Малахов Курган, памятник Матросу Кошке и много-много других. Некоторые гости говорят, что тут на каждом шагу что-то новое, что-то интересное и необычное. И они в большей степени правы. Собственно, перейдем к задаче. Она будет очень полезна туристам, у которых мало времени, и они могут только бегло просмотреть некоторые достопримечательности. Представим город в виде прямоугольного поля размера \textbf{N}×\textbf{M}, каждая ячейка которого содержит некоторое число достопримечательностей. Наш турист хочет очень быстро посмотреть как можно большее количество достопримечательностей, потому он начнет в любой ячейке Северного ряда, а закончит обязательно в любой ячейке Южного ряда. При этом турист может передвигаться только в трех направлениях: в южном, юго-западном и юго-восточном. Напомним, что север находится в верхней части карты, а юг -- в нижней. И было бы все достаточно просто, если бы турист не нашел в интернете самые интересные места Севастополя. Теперь он, конечно, хочет обязательно их посетить. Помогите ему: по заданной карте с достопримечательностями, а также списком мест, которые турист хочет обязательно посмотреть, найдите максимальное количество достопримечательностей, которых он сможет посмотреть или выведите \textbf{-1}, если он не сможет обойти все желаемые места, двигаясь только в выбранных направлениях. Выходить за пределы города ему запрещается. \InputFile В первой строке содержится два числа \textbf{N}, \textbf{M} (\textbf{1} ≤ \textbf{N}, \textbf{M} ≤ \textbf{1000}) -- количество участков города. Далее следует \textbf{N }строк, по \textbf{M} чисел в каждой -- количество достопримечательностей в каждом участке (будем честными, в каждом участке не более \textbf{10^5} достопримечательностей, но и не менее одной, так как любые части природы тут обладают невероятной красотой). Далее следует число \textbf{K} (\textbf{0} ≤ \textbf{K} ≤ \textbf{N·M}) -- количество участков, которые желает посетить турист. В следующих \textbf{K} строках содержится по два числа -- координаты \textbf{i}-го участка. Гарантируется, что участки не повторяются в его списке. \OutputFile В единственной строке выведите ответ на задачу или "\textbf{-1}", если обойти Севастополь, посетив все желаемые места, невозможно.
Zaman məhdudiyyəti 2 saniyə
Yaddaşı istafadə məhdudiyyəti 32 MiB
Giriş verilənləri #1
3 3
1 2 3
7 4 6
5 2 1
1
2 2
Çıxış verilənləri #1
12
Müəllif Александр Бурков
Mənbə III Открытая Дистанционная Олимпиада 2013-2014 им. В.Л.Дидковского