Matura informatyka maj 2024, zadanie 1 (Plansza) — rozwiązanie

Algorytm z planszy sprawdza jedną rzecz — czy da się przejść z rogu w róg po białych polach. Gotowe odpowiedzi do 1.1, kontrprzykłady do 1.2 i wzór do 1.3.

Ten groźnie wyglądający algorytm sprawdza jedno pytanie: czy da się dojść z lewego górnego rogu do prawego dolnego, stąpając tylko po białych polach i ruszając się wyłącznie w prawo albo w dół.

Arkusz CKE — maj 2024, rozszerzony

Zasada — pole osiągalne, gdy białe i sąsiad osiągalny

Wyobraź sobie wodę nalewaną w lewym górnym rogu, która płynie tylko w prawo i w dół. Czarne pola to ścianki. Pytanie brzmi: czy woda dotrze do rogu na dole po prawej.

P[1][1] = (A[1][1] == 1)
for i in range(1, n+1):
    for j in range(1, m+1):
        if A[i][j] == 0:
            P[i][j] = False                # czarne = ściana
        else:
            gora = P[i-1][j] if i > 1 else False
            lewo = P[i][j-1] if j > 1 else False
            P[i][j] = (i == 1 and j == 1) or gora or lewo
# wynik: P[n][m]

To programowanie dynamiczne w czystej postaci — każde pole liczysz raz, na podstawie dwóch już policzonych sąsiadów.

Zadanie 1.1 — wyniki dla trzech plansz

planszawynik
a)PRAWDA
b)FAŁSZ
c)PRAWDA

Nie analizuj planszy w głowie naraz. Wpisuj PRAWDA/FAŁSZ pole po polu, wiersz po wierszu od lewej, jak w sudoku. Jak dojdziesz do prawego dolnego rogu, masz odpowiedź. Minuta roboty.

Zadanie 1.2 — kontrprzykłady

a) plansza 5×5, najwyżej 2 czarne pola, wynik FAŁSZ

Zamaluj pole po prawej od startu i pole pod startem, czyli (1,2) i (2,1). Woda nie ma jak wypłynąć z rogu — oba wyjścia są zamurowane. Cała reszta planszy może być biała.

b) plansza 4×4, co najmniej 9 czarnych pól, wynik PRAWDA

Odwrotnie: zostaw białą jedną schodkową ścieżkę z rogu do rogu. Na planszy 4×4 ma ona 2·4 − 1 = 7 pól. Pozostałe 9 zamalowujesz. Ścieżka istnieje, więc PRAWDA, a czarnych jest dokładnie 9.

Zadanie 1.3 — ile czarnych pól zniesie PRAWDA

Żeby wynik był PRAWDA, musi istnieć biała ścieżka z rogu do rogu. Najkrótsza taka droga na planszy n×n to schodki odwiedzające 2n − 1 pól. Te muszą być białe, cała reszta może być czarna.

Odpowiedź: n² − (2n − 1) = (n−1)²

Sprawdzenie: dla 3×3 to 4, dla 5×5 to 16, dla 10×10 to 81.

Gdzie tracisz punkty

  • Próba zablokowania planszy jednym polem. Pojedyncze czarne pole nigdy nie rozetnie planszy — wodę zawsze da się obejść. Najtańsze przecięcie to oba wyjścia z rogu naraz.
  • Ruch w lewo albo w górę. Algorytm dopuszcza wyłącznie prawo i dół. Ścieżka „naokoło" nie istnieje, nawet jeśli wygląda na oczywistą.
  • Pomylenie 2n−1 z 2n. Schodki z rogu do rogu na planszy n×n mają 2n−1 pól, bo pole startowe liczysz raz.

Ciekawostka

Liczba różnych schodkowych ścieżek z rogu do rogu (gdyby plansza była cała biała) na siatce n×m wynosi C(n+m−2, n−1) — czyli liczbę z trójkąta Pascala. Te same liczby wyskakują przy rozwinięciu (a+b)ᵏ i przy rachunku prawdopodobieństwa. Ścieżki kratowe, dwumian Newtona i trójkąt Pascala to dosłownie ta sama matematyka oglądana z trzech stron. Na maturze pytają tylko, czy jakaś ścieżka istnieje — ale pod spodem siedzi cała kombinatoryka.

Ten sam wzorzec w innych arkuszach

Skan siatki dwuwymiarowej i liczenie pola z już policzonych sąsiadów wraca regularnie:

Z tego samego arkusza: zad. 2 (Cyfry).


Programowanie dynamiczne brzmi groźnie, a w praktyce sprowadza się do „policz pole z dwóch sąsiadów". Rozpisane od zera w Variancie.

Wariant — kurs maturalnyKup kurs