Search
[0, 1, 2, 3]
[3, 2, 1, 0]
[2, 0, 1]
[1, 2, 0]
TE*A*QYS***SEU****NI*O**
m=[ [0,0,1,0,0,1,0,0,0,0], [0,0,1,0,0,1,0,0,0,0], [0,0,1,1,0,1,0,0,0,1], [0,0,1,0,0,0,1,0,1,0], [0,0,1,0,0,0,0,1,0,0], [0,0,1,1,0,1,0,0,0,0], [0,0,1,0,1,1,1,1,0,0], [0,0,1,0,0,1,0,1,1,1], [0,0,1,0,0,1,0,0,0,0], [0,0,1,0,0,1,0,0,0,0] ]
lddl dldl dldl ddll lldd dldl dldl dlld ddll lldd dlld lddl dldl ddll lddl dlld
V tomto případě: existuje tmavá cesta zleva doprava (mezi body a-b), světlá cesta zleva doprava (a'-b'). Tmavá cesta mezi body c-d zleva doprava nevede, nebo v bodě c neprotíná levou stranu desky.
Pro načtení vstupního souboru můžete použít tuto funkci, která vrací 2D pole, každá buňka pak obsahuje jméno dílku (indexujeme [radek][sloupec]).
def loadBoard(filename): b = [] f = open(filename,"r") for line in f: b.append( line.strip().split() ) f.close() return b
Vstup:
ddll lddl dldl ddll lldd dlld lddl dlld lldd dldl dldl ddll lddl dlld ldld ldld lldd dlld lldd dlld lddl ddll lddl ddll ldld ldld lddl dldl dldl dlld lldd ddll lddl dlld lldd dlld lddl ddll lldd dlld lddl ddll lddl dldl dlld ldld ldld lldd dlld
Výstup:
-1 21 24 -1
Komentář: žádná světlá cesta nevedle zleva doprava (-1), tmavá cesta zleva doprava vede přes 21 dílků (z pozice 4,0 do pozice 2,6), délka světlé cesty shora dolů je 24 dílků, a žádná tmavá cesta nevede shora dolů (-1).
lddl none lldd dlld lddl none lddl dlld lldd dlld lddl ddll lddl dlld lldd
6 6 -1 -1
dlld lldd dlld ldld ddll lddl ddll lddl lldd dldl dlld lldd lddl none ldld lddl
1 1 4 4
Komentář: mapa obsahuje jeden světlý cyklus a jeden tmavý cyklus, jejich délka je v obou případech 4 dílky.
ddll lddl ddll lddl dlld lldd dlld lldd ddll lddl ddll none dlld none dldl ddll
2 1 4 4
Komentář: mapa obsahuje dva světlé cykly (délka nejdelšího je 4) a jeden tmavý cyklus délky 4.
lldd ddll ldld lddl ddll ldld ldld lddl dldl ddll lldd dlld lddl ddll dldl dldl dldl ddll lddl dldl dldl dldl dlld lldd dlld lldd dlld lldd lldd ddll lddl ddll lddl ddll ldld lddl dlld lldd dlld lldd dlld ldld lldd ddll ldld lddl ddll ldld ldld
4 2 10 4
Komentář: mapa obsahuje 4 světlé a 2 tmavé cykly. Délka nejdelšího světlého cyklu je 10, délka nejdelšího tmavého cyklu je 4.
ddll lldd dlld lddl lldd ddll lddl dlld lddl dlld lldd ddll dlld lddl ddll lldd
1 1 4 12
lldd ddll lddl dldl dlld lldd dldl ldld lldd dldl dldl ddll lddl dlld lddl ddll lldd dlld lldd dlld ldld dldl dlld ldld lddl ddll ldld lddl dldl ddll lddl dldl dlld lddl dldl dldl dlld lldd dlld lddl dlld lldd dlld lddl ddll ldld lldd ddll lddl
2 0 8 0
Komentář: mapa obsahuje pouze 2 světlé cykly (délka nejdelšího je 8 políček). Mapa neobsahuje žádný tmavý cyklus.