Išspręsk užduotį

Duotas dvimatis masyvas, nusakantis labirinto struktūrą. Masyvas sudarytas iš tokių elementų:

 

struct Cell {

public bool IsOpen { get; set; }

public int Value { get; set; }

}

"IsOpen" nurodo ar labirinto langelis yra atviras.

"Value" nurodo langelio taškų skaičių.

 

 

Realizuokite funkciją, kuri surastų išėjimą iš labirinto, surenkant daugiausiai taškų trumpiausiu keliu. 

Reikalavimai:

 

  1. Jei yra du vienodos taškų sumos keliai, reikia pasirinkti trumpesnįjį.
  2. Funkcija turi priimti dvimatį masyvą, sudarytą iš struktūros "Cell" ir labirinto pradžios koordinatės.
  3. Funkcija turi grąžinti koordinačių sąrašą, kuris nusako kelią.

Pvz.:

Tuple<int,int>[] FindPath(Cell[] labyrynth, Tuple<int,int> entrance) {

...

}

Galite naudoti pasirinktą programavimo kalbą (C#, Java, Python, C++, t.t.)

 

 Teisingai išsprendę uždavinį, gausite papildomų taškų aplikuojant į Visma Lietuva praktiką.

Atsakymus siųskite - greta.aleknaviciute@visma.com

Slapukai (angl. cookies) naudojamos šioje svetainėje tam, kad palengvintų naudojimąsi šiuo puslapiu. Kai kurie slapukai būtini svetainės darbui ir jau atsiųsti į jūsų kompiuterį. Jūs galite blokuoti slapukus, tačiau kai kurios šios svetainės dalys gali prarasti dalį funkcionalumo.