Erinevus lehekülje "ITI0140:Ülesanne 15" redaktsioonide vahel

Allikas: Kursused
Mine navigeerimisribale Mine otsikasti
(Uus lehekülg: '= Miinikits Miina tagasitulek = Teie ustav kits Miina on läinud kaduma. Kuulete häälte järgi, et ta on kadunud maa-alusesse labürinti. Kuna Miina aitas teid enne miini lei...')
 
3. rida: 3. rida:
 
Teie ustav kits Miina on läinud kaduma. Kuulete häälte järgi, et ta on kadunud maa-alusesse labürinti. Kuna Miina aitas teid enne miini leidmisega, on aeg teil teda aidata. Peate koostama networkx-i graafi ala ASCII pildist ja leidma networkx-i abil lühima tee läbi selle graafi.
 
Teie ustav kits Miina on läinud kaduma. Kuulete häälte järgi, et ta on kadunud maa-alusesse labürinti. Kuna Miina aitas teid enne miini leidmisega, on aeg teil teda aidata. Peate koostama networkx-i graafi ala ASCII pildist ja leidma networkx-i abil lühima tee läbi selle graafi.
 
   
 
   
ASCII pildist tuleb lugeda välja koordinaadid nii, et iga sõlm koosneb suurest tähest ja numbrist. Täht tuleneb Rea numbrist, ja number tuleneb veeru numbrist, e. siis:
+
ASCII pildist tuleb graaf koostada nii, et iga ristumine on tipp, sisseppäs on lähtetipp ja väljappäs on lõpptipp. Tippude nimed on kodeeritud vastavate koordinaatidega.
  
 
<pre>
 
<pre>
10. rida: 10. rida:
 
B  ['X', 'X', ' '],
 
B  ['X', 'X', ' '],
 
C  ['X', 'X', ' ']]
 
C  ['X', 'X', ' ']]
 +
 
</pre>
 
</pre>
 
 
Peate realiseerima kaks funktsiooni:
 
Peate realiseerima kaks funktsiooni:
  
17. rida: 17. rida:
 
def create_graph(labyrinth):
 
def create_graph(labyrinth):
  
Andes sisse ascii kaardi, nagu näiteks
+
Create_graph peaks tegema antud ascii laburündist reeglite kohase networkx graafi.
 
+
(Reegleid soovitan vaadata loengu slaididelt, tegemist on kaalutud graafiga.)
[[' ', ' ', ' '],
 
['X', 'X', ' '],
 
['X', 'X', ' ']]
 
 
 
</pre>
 
 
 
, kus 'X' on sein ja ' ' (tühik) on tühimik, mida mööda saab liikuda, ülesandeks on koostada sellisest maatriksist networkx-i graafi, e. see funktsioon peaks tagastama vastava networkx-i graafi.
 
 
teiseks tuleb realiseerida järgnev:
 
  
<pre>
 
 
def find_shortest_path(graph):
 
def find_shortest_path(graph):
  
See funktsioon peaks võtma sisse networkx-i graafi, ja tagastama tee A0-ist kõige all paremapoolsele sõlmele.  
+
See funktsioon peaks võtma sisse networkx-i graafi, ja tagastama tee sissepäästust kõige all paremapoolsele väljapääsule. </pre>
Ehk eelmise näite järgi, peaks tagastama ['A0', 'A1', 'A2', 'B2', 'C2']. (Võib kasutada networkx-i lahendusi sellele)
+
Ehk eelmise näite järgi, peaks tagastama ["A0", "A2", "C2"].  
</pre>
 
 
On garanteeritud, et koridorid on maksimaalselt ühe ühiku laiused, ja et find_shortest_path-i testites antakse ette alati leitav tee.
 
On garanteeritud, et koridorid on maksimaalselt ühe ühiku laiused, ja et find_shortest_path-i testites antakse ette alati leitav tee.

Redaktsioon: 25. november 2015, kell 16:38

Miinikits Miina tagasitulek

Teie ustav kits Miina on läinud kaduma. Kuulete häälte järgi, et ta on kadunud maa-alusesse labürinti. Kuna Miina aitas teid enne miini leidmisega, on aeg teil teda aidata. Peate koostama networkx-i graafi ala ASCII pildist ja leidma networkx-i abil lühima tee läbi selle graafi.

ASCII pildist tuleb graaf koostada nii, et iga ristumine on tipp, sisseppäs on lähtetipp ja väljappäs on lõpptipp. Tippude nimed on kodeeritud vastavate koordinaatidega.

     0    1    2
A [[' ', ' ', ' '],
B  ['X', 'X', ' '],
C  ['X', 'X', ' ']]

Peate realiseerima kaks funktsiooni:

def create_graph(labyrinth):

Create_graph peaks tegema antud ascii laburündist reeglite kohase networkx graafi. 
(Reegleid soovitan vaadata loengu slaididelt, tegemist on kaalutud graafiga.)

def find_shortest_path(graph):

See funktsioon peaks võtma sisse networkx-i graafi, ja tagastama tee sissepäästust kõige all paremapoolsele väljapääsule. 

Ehk eelmise näite järgi, peaks tagastama ["A0", "A2", "C2"]. On garanteeritud, et koridorid on maksimaalselt ühe ühiku laiused, ja et find_shortest_path-i testites antakse ette alati leitav tee.