QOJ.ac

QOJ

Time Limit: 6 s Memory Limit: 64 MB Total points: 100

#23686. Centrum handlowe

Statistics

W Zagrzebiu, stolicy Chorwacji, w związku z organizacją zawodów IOI 2007 postanowiono wybudować na przedmieściach duże centrum handlowe. Teren kandydujący pod budowę centrum handlowego jest podzielony w kształt siatki o wymiarach $m$ bloków w poziomie na $n$ bloków w pionie, jak pokazano na poniższym rysunku.

Przykład terenu kandydującego ($m = 10$, $n = 7$)

Miasto Zagrzeb postanowiło wybrać z terenu kandydującego prostokątny obszar o wymiarach $a$ bloków w poziomie na $b$ bloków w pionie i wybudować tam centrum handlowe. Jednak niektóre bloki na terenie kandydującym są już zamieszkane przez ludzi i na tych działkach nie można wybudować centrum handlowego. Jeśli wewnątrz prostokątnego obszaru o wymiarach $a$ bloków w poziomie na $b$ bloków w pionie nie ma żadnego zamieszkanego bloku, centrum handlowe można wybudować, wykupując wszystkie bloki znajdujące się w tym prostokątnym obszarze.

Ze względów finansowych miasta Zagrzeb koszt wykupu gruntów musi być jak najmniejszy. Aby opracować projekt budżetu, należy pilnie obliczyć koszt niezbędny do wykupu gruntów pod budowę centrum handlowego. W związku z tym miasto Zagrzeb postanowiło zlecić napisanie odpowiedniego programu Tobie, jako kandydatowi na reprezentanta na IOI 2007.

Napisz program, który mając dane na wejściu rozmiary terenu kandydującego, rozmiary centrum handlowego, a także dla każdego bloku informację o tym, czy mieszkają tam ludzie, oraz – jeśli nikt tam nie mieszka – koszt wykupu tego bloku, wyznaczy minimalny koszt wykupu gruntów niezbędny do wybudowania centrum handlowego.

W dalszej części blok znajdujący się w $i$-tej kolumnie od lewej oraz w $j$-tym wierszu od góry terenu kandydującego oznaczamy przez $(i, j)$.

Wejście

Pierwszy wiersz pliku wejściowego mall.in zawiera dwie liczby całkowite $m, n$ ($1 \le m, n \le 1000$) oddzielone spacją. Oznacza to, że teren kandydujący ma wymiary $m$ bloków w poziomie na $n$ bloków w pionie.

Drugi wiersz zawiera dwie liczby całkowite $a, b$ ($1 \le a, b \le 1000$) oddzielone spacją. Oznacza to, że centrum handlowe ma wymiary $a$ bloków w poziomie na $b$ bloków w pionie.

Kolejne $n$ wierszy (od wiersza $3$ do wiersza $n + 2$) zawiera informacje o poszczególnych blokach na terenie kandydującym. Wiersz $j + 2$ ($1 \le j \le n$) przedstawia informacje o blokach w $j$-tym wierszu od góry i zawiera $m$ liczb całkowitych $c_{1,j}, \dots, c_{m,j}$ ($-1 \le c_{i,j} \le 100$) oddzielonych spacjami. Gdy $c_{i,j} = -1$, oznacza to, że w bloku $(i, j)$ mieszkają ludzie. W przeciwnym razie liczba ta oznacza, że koszt wykupu bloku $(i, j)$ wynosi $c_{i,j}$.

Zauważ, że dla danych wejściowych używanych podczas oceniania wybudowanie centrum handlowego jest zawsze możliwe.

Wyjście

Wyjście należy wypisać na standardowe wyjście. Wypisz minimalny koszt wykupu gruntów niezbędny do wybudowania centrum handlowego.

Przykład

Wejście 1

7 6
3 2
26 29 84 15 -1 1 71
45 14 38 91 62 77 35
68 -1 -1 90 63 56 70
31 2 4 74 72 41 90
100 26 21 -1 44 72 60
71 4 40 93 48 -1 50

Wyjście 1

184

Teren budowy centrum handlowego w tym przykładzie wejścia i wyjścia zilustrowano poniżej. Blok oznaczony symbolem $\times$ oznacza, że mieszkają już tam ludzie.

Uwaga

Zwróć uwagę na rozmiar danych wejściowych. W szczególności biblioteka iostream w C++ jest wolna, dlatego w razie potrzeby zaleca się użycie fscanf itp.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.