Problem description
Farmer Dżon, który właśnie przeszedł na emeryturę, wreszcie ma dużo czasu, by zająć się swoją największą pasją – hodowlą szczurów. Niestety życie emeryta nie jest łatwe: zapasy paszy powoli się kończą, a jego podopieczni robią się coraz bardziej głodni.
Pewnego dnia Dżon znalazł na strychu stary, mocno postrzępiony dywan. Ku jego zaskoczeniu okazało się, że materiał, z którego został wykonany, jest prawdziwym przysmakiem dla szczurów. Problem polega jednak na tym, że nie każdy szczur jest w stanie zjeść dowolny fragment dywanu.
Dywan ma kształt prostokąta o wymiarach N × M i został podzielony na N ⋅ M kwadratów jednostkowych. Pole znajdujące się w wierszu i i kolumnie j ma grubość ai, j.
Dla szczura o rozmiarze k obowiązują następujące zasady:
- jeśli ai, j < k, szczur może swobodnie przejść przez dane pole, ale niczego nie zjada,
- jeśli ai, j > 2k, pole jest zbyt grube i szczur nigdy na nie nie wejdzie,
- jeśli k ≤ ai, j ≤ 2k, szczur może wejść na pole i zjeść ai, j − k jednostek dywanu, redukując grubość dywanu w tym kwadracie do k.
Szczur rozpoczyna swoją wędrówkę poza dywanem. Może poruszać się pomiędzy sąsiednimi polami (góra, dół, lewo, prawo), a także dowolnie opuszczać dywan i wracać na niego w innym miejscu na brzegu. Może dowolnie wiele razy wchodzić na to samo pole, jednak po pierwszym wejściu grubość dywanu może być już zmieniona.
Farmer Dżon ma w hodowli Q szczurów i na razie nie wpuszcza żadnego z nich na dywan, ale chciałby wiedzieć ile maksymalnie jednostek dywanu mógłby zjeść każdy ze szczurów, gdyby został wpuszczony.
Wejście
W pierwszym wierszu znajduje się liczba zestawów testowych T. Opis zestawu testowego składa się z następujących wierszy:
- pierwszy wiersz zawiera dwie liczby całkowite N, M,
- kolejne N wierszy zawiera po M liczb całkowitych ai, j opisujących grubości pól dywanu,
- następny wiersz zawiera liczbę szczurów Q,
- ostatni wiersz zawiera Q liczb k1, k2, …, kQ, oznaczających rozmiary szczurów.
Wyjście
Dla każdego zestawu danych wypisz jeden wiersz zawierający Q liczb – maksymalną liczbę jednostek dywanu, które mógłby zjeść szczur o odpowiednim rozmiarze, gdyby został wpuszczony na dywan.
Ograniczenia
1 ≤ T ≤ 104, 1 ≤ N ⋅ M ≤ 106, 1 ≤ Q ≤ 106, 1 ≤ ai, j, ki ≤ 109.
Łączna liczba pól we wszystkich zestawach danych nie przekracza 106.
Łączna liczba szczurów we wszystkich zestawach danych nie przekracza 106.
Podzadania
| Podzadanie | Dodatkowe warunki | Punkty |
|---|---|---|
| 1 | N, M ≤ 10, Q ≤ 100 | 14 |
| 2 | Q ≤ 10 | 34 |
| 3 | brak | 52 |
Przykład
| Wejście | Wyjście | Wyjaśnienie |
|
|
Pierwszy szczur mógłby wejść na kwadrat w lewym górnym rogu i nic nie zjeść, analogicznie na kwadrat w prawym górnym rogu. Mógłby natomiast zjeść 2 jednostki dywanu w prawym dolnym rogu dywanu. To wszystko co mógłby zrobić ten szczur. |
| Wejście | Wyjście | |
|
|
| Wejście | Wyjście | |
|
|