Opracowanie GRU: Grusze i jabłonie

Transkrypt

Opracowanie GRU: Grusze i jabłonie
Opracowanie GRU: Grusze i jabłonie
Autor zadania: Jacek Tomasiewicz.
Rozwiązanie
Najbardziej oddalonymi drzewkami będzie pierwsza (występująca w ciągu) grusza z ostatnią jabłonią, lub
pierwsza jabłoń z ostatnią gruszą. Gdyby tak nie było, to moglibyśmy wziąć odpowiednio wcześniejsze (późniejsze)
drzewko i mielibyśmy większą odległość pomiędzy nimi. Drzewka te możemy znaleźć w czasie liniowym, stąd
złożoność rozwiązania wynosi O(n).
Pseudokod
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
wczytaj(n)
pie_grusza
pie_jablon
ost_grusza
ost_jablon
for k := 1
:=
:=
:=
:=
to
0
0
0
0
n do
wczytaj(drzewko)
if drzewko == 0 AND pie_grusza == 0 then pie_grusza := k
if drzewko == 1 AND pie_jablon == 0 then pie_jablon := k
if drzewko == 0 then ost_grusza := k
if drzewko == 1 then ost_jablon := k
12. wypisz(max(ost_grusza – pie_jablon, ost_jablon – pie_grusza))
Opracowanie GRU: Grusze i jabłonie
1/1