Editorial for Raznobojna putanja
Submitting an official solution before solving the problem yourself is a bannable offence.
Author:
Napravićemo novi usmeren graf sa čvorova, gde svaki čvor predstavlja uređen par
, gde je
čvor originalnog grafa, a
vrednost
ako je prethodni čvor bio različite boje, ili
ako je bio iste boje. Ovaj graf konstrujišemo od početnog na sledeći način: ako su dva čvora
i
iste boje povezane granom, tada u novom grafu dodamo granu od
ka
i od
ka
(što predstavlja da ukoliko smo došli iz istobojnog čvora, sada moramo da drugi parametar bude
); a ako su čvorovi
i
povezane granom, onda dodamo granu između parova čvorova (
ka
), (
ka
), (
ka
) i (
ka
) (što predstavljava da smo se vratili u stanje
, jer prethodni nije iste boje).
Kada napravimo ovaj graf, na njemu pustimo običnu pretragu po širini, i rešenje nam je najkraće od rastojanja do i
. Vremenska složenost ovog algoritma je
.
Comments