Dobry den. Snažil jsem se vygooglit způsoby/algoritmy, jak by se dala generovat "směrka", bohužel jsem stroskotal. Krom vlastních algoritmů, kdy bych si ukládal pozice začátku slova, směr, a to vše testoval v několika podmínkách a kvuli nim opakujících cyklech mě nic nenapadlo :// Moje prozba směřuje spíše k nějakému matematickému postupu, podle kterého by se to snad dalo. Něco jako kdyz jsem generoval podle sebe bludiště a za měsíc zjistil, že existuje velice inteligentní a jednoduchý způsob, viz. http://www.devbook.cz/algoritmus-tvorba-nahodneho-bludiste
Fórum › Java
Ctyr/Osmi-směrka
Řekl bych, že v tomto případě je základem velký slovník. No a pak bych to řešil asi následovně. Mám pole N x M, do kterého vygeneruji tajenku. Nějakým vhodným způsobem si je označím, abych v programu věděl, že přes ně slovo nelze. No a pak bych vygeneroval v náhodném pořadí pozice všech ostatním políček, k nim přiřadil náhodně směr, ve kterém zde začínající slovo má pokračovat.
Dalším krokem by bylo procházení tohoto seznamu, zjištění, jak maximálně dlouhé slovo hledám a jestli už má nějaká písmenka z předchozích kroků dané a toto slovo bych hledal ve slovníku. Pokud by se nic nenašlo, tak bych si políčko nechal do dalšího kola, ve kterém bych měnil směr.
Konec algoritmu by byl buď, že nejsou žádná prázdná políčka nebo že se nepodařilo žádné volné políčko již zaplnit ani po vyzkoušení všech směrů, takže v nejjednodušším případě by se všechno zahodilo a začalo se znovu od tajenky.
Takhle na náhodu to jde samozřejmě jen s velkým slovníkem, jak jsem psal na začátku. Pokud máš malý slovník, tak pak jsou metody prohledávání (do hloubky, do šířky), kdy nehledáš výsledek náhodně, ale sofistikovaně.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Kombinace čtyř JListů — založil Nicolas
Zadání právě čtyř čísel oddělených mezerou v jedné řádce — založil Zyxx
Moderátoři diskuze