Utilia

Labürindi generaator ja mäng

Tasuta labürindi generaator kolme algoritmi ja jagatavate koodidega. Mängi aja peale klahvide või pühkimisega, näita lahendust ning prindi või salvesta PDF.

Aeg
0:00
Käike
0
Parim aeg
–

Jõua rohelisest sissepääsust (üleval vasakul) punase väljapääsuni (all paremal). Klaviatuuril: nooleklahvid või WASD, Shift + nool jookseb järgmise hargnemiseni. Puutega: pühi labürindil, et mööda koridori joosta, või kasuta nooleklahvide nuppe.

Kuidas labürindi generaatorit kasutada

  1. Määra Laius (veerge) ja Kõrgus (ridu), kummagi jaoks 4 kuni 60 lahtrit, ning vali Algoritm. Klõpsa Uus labürint.
  2. Sinu asukoht on punkt rohelises sissepääsus üleval vasakul. Jõua punase väljapääsuni all paremal.
  3. Liigu nooleklahvide või WASD-klahvidega (prantsuse klaviatuuril ZQSD). Hoia nooleklahviga koos all Shift-klahvi, et joosta mööda koridori järgmise hargnemiseni. Telefonis või tahvelarvutis pühi labürindil soovitud suunas jooksmiseks või puuduta nooleklahvide nuppe labürindi all üksikute sammude jaoks.
  4. Taimer käivitub sinu esimese käiguga ja peatub väljapääsul. Sinu jälg joonistatakse sinu taha; selle peal tagasi kõndimine kustutab selle, nii et see näitab alati teed, mida mööda parajasti oled.
  5. Kas jäid hätta? Näita lahendust joonistab lühima tee sinu asukohast väljapääsuni. Tagasi algusesse viib sind sissepääsu juurde tagasi ja lähtestab taimeri.
  6. Paberil mängimiseks klõpsa Prindi või Laadi alla PDF. Märgi enne Lisa lahenduse leht, kui soovid vastust teisele lehele.

Jaga labürinti koodiga

Igal labürindil on Labürindi kood, näiteks b20x15-k3j9x2: algoritmi täht (b, p või k), laius × kõrgus ning juhuslik seeme. Sama kood ehitab igas seadmes alati täpselt sama labürindi, nii et saad sõbrale väljakutse esitada, et ta sinu aja samal paigutusel ületaks. Sisesta või kleebi kood ja klõpsa Laadi kood või kasuta Kopeeri link, et jagada veebiaadressi, mis avab selle labürindi otse.

Kolm genereerimisalgoritmi

Kõik kolm ehitavad täiusliku labürindi: iga lahtrisse saab jõuda ja iga kahe lahtri vahel on täpselt üks tee, seega pole ringe ega suletud alasid. Need erinevad labürindi struktuuri poolest:

  • Rekursiivne tagasiminek (pikad koridorid) liigub juhuslikult lahtrist lahtrisse, lõhub seinu ja taganeb, kui jõuab ummikusse. Tulemuseks on pikad looklevad käigud vähese hargnemisega: lahendus on tavaliselt pikk ja viib sind üle suurema osa ruudustikust.
  • Prim (palju lühikesi ummikuid) kasvatab labürinti juhuslikust lahtrist väljapoole, lisades iga kord juhusliku piirilahtri. Saad palju lühikesi kõrvalharusid, mistõttu labürint näeb välja rahutu, aga põhitee on kergemini nähtav.
  • Kruskal (ühtlane, hargnev) eemaldab juhuslikult valitud seinu lahtrite vahel, mis pole veel ühendatud (seda jälgitakse union-find-struktuuriga). Tulemus on igal pool ühtlaselt hargnev, nähtava alguspunktita.

Labürindi kohal olev rida annab suuruse, lühima tee pikkuse ja ummikute arvu, nii et saad algoritme ühe pilguga võrrelda.

Kuidas lahendus leitakse

Lahendus kasutab laiuselt esimese otsingut (BFS): sinu lahtrist alustades uuritakse kõiki naabreid ühe sammu kaugusel, siis kahe sammu kaugusel ja nii edasi, kuni jõutakse väljapääsuni. Kuna iga samm maksab sama palju, leiab BFS alati lühima tee. Täiuslikus labürindis on see tee ka ainus ilma tagasikäimiseta. Kui lahendus oli jooksu ajal nähtaval, siis sinu lõppaega ei salvestata parima ajana.

Printimise nõuanded

Prinditud ja PDF-versioonid joonistavad puhtad mustad seinad valgele taustale ning labürindi koodi pealkirjas, et saaksid sama labürindi uuesti leida. Umbes 15 × 15 suurused sobivad väikelastele; 30 × 30 ja suuremad annavad täiskasvanutele korraliku mõistatuse. Väga suurtel labürintidel (50 × 60) on A4-lehel kitsad koridorid, seega prindi need täislehe suuruses.

Korduma kippuvad küsimused

Kas iga labürint on lahendatav?

Jah. Kõik kolm algoritmi loovad täiuslikke labürinte, kus iga lahter on iga teisega ühendatud täpselt ühe teega, seega on sissepääsust väljapääsuni alati tee olemas.

Kas saan sama labürinti uuesti mängida või jagada?

Jah. Pane kirja labürindi kood või klõpsa Kopeeri link. Sama koodi laadimine ehitab igas arvutis või telefonis identse labürindi.

Kus minu parimat aega hoitakse?

Ainult selles brauseris, algoritmi ja suuruse kaupa. Midagi ei saadeta kuhugi. Brauseri andmete kustutamine eemaldab selle.

Kuidas mängida puuteekraanil?

Pühi labürindil: sinu punkt jookseb selles suunas mööda koridori järgmise hargnemiseni. Täpsete üksikute sammude jaoks kasuta labürindi all olevaid nooleklahvide nuppe.

Miks PDF erineb sellest, mida ekraanil näen?

PDF ja prindivaade on tehtud paberi jaoks: mustad seinad, ilma jäljeta ja ilma mängija punktita. Lahenduse leht näitab lühimat teed sissepääsust, mitte sinu praegusest asukohast.