Výsledky 1 až 14 z 14

Téma: [Pascal] Algoritmus na seřazení čísel v matici (Hra 15)

  1. #1

    Standardní [Pascal] Algoritmus na seřazení čísel v matici (Hra 15)

    Potřeboval bych algoritmus na vyřešení takové té hry (nevím jak se jmenuje), kdy jsou v matici 4x4 čísla 1 až 15 libovolně rozházená. Řeší se to posuváním toho prázdného políčka doleva/doprava/nahoru/dolů. Případně není na to obecný algoritmus pro nxn. Stačí algoritmus, program si už napíšu. Díky!

  2. #2

    Standardní

    vola sa to vacsinou jednoducho "Hra 15",
    tato hra je podla mna tak na hranici toho, ked jednoduchy backtracking straca zmysel a je potrebne pouzit nejaku heuristiku...

    obecny algoritmus je teda - backtracking
    AthlonXP 1700+@1900+, Epox 8K3A, Volcano 7+, 512MB DDRAM Apacer PC266 CL2, MSI GeForce4 4200 64MB 280/580, WD 800JB 80GB, IBM 60GXP 40GB, TEAC CD-W516EB, DVD-ROM Toshiba SD-M1612 RegionFree, Soundblaster Audigy, Creative Inspire 5.1 5300, Pinnacle Studio PCTV Pro, HP DeskJet 845C, mys A4Tech WOP-35, Genius SpeedWheel, Asec Perifer ATX

  3. #3

    Standardní

    Citace Původně odeslal Absurdus
    vola sa to vacsinou jednoducho "Hra 15",
    tato hra je podla mna tak na hranici toho, ked jednoduchy backtracking straca zmysel a je potrebne pouzit nejaku heuristiku...

    obecny algoritmus je teda - backtracking
    Já jsem právě myslel, že na to je nějaký sofistikovanější algoritmus. Backtrack i s nějakým ořezáváním bude hodně brutální. No zkusím to udělat a uvidíme. Jestli někdo víte, jak to vyřešit lépe, dejte vědět pls.

  4. #4

    Standardní

    Na jeden, mozna lepsi, jsem si vzpomel (delali jsme to ve skole). Tusim ze to fungovalo na principu ocenovani. Pred kazdym krokem jsi spocital sumu vzdalenosti od reseni a podle toho ses rozhodl kam jit. (vlastne takovej chytrejsi backtraking). Pokud bys to chtel vedet detailneji tak rekni, musel bych se kouknout do skript.

  5. #5

    Standardní

    Citace Původně odeslal Nikes
    Na jeden, mozna lepsi, jsem si vzpomel (delali jsme to ve skole). Tusim ze to fungovalo na principu ocenovani. Pred kazdym krokem jsi spocital sumu vzdalenosti od reseni a podle toho ses rozhodl kam jit. (vlastne takovej chytrejsi backtraking). Pokud bys to chtel vedet detailneji tak rekni, musel bych se kouknout do skript.
    No kdybys mi to mohl popsat trochu podrobněji, tak bych byl moc rád. Dík.

  6. #6

    Standardní

    sofistikovanejsie algoritmy samozrejme su ale pri nich nemas zarucene, ze sa naozaj dopatras ciela

    kazda heuristika (aj spomenute ocenovanie) ma niekde achilovu patu a pre nejake vstupy to moze zlyhat

    da sa pouzit aj princip sachovych algoritmov:
    strom vsetkych tahov a jeho minmaxove orezavanie podla nejakej hodnotiacej funkcie...

    P.S. dufam ze vies, ze nie vsetky pozicie sa nedaju vyriesit?
    AthlonXP 1700+@1900+, Epox 8K3A, Volcano 7+, 512MB DDRAM Apacer PC266 CL2, MSI GeForce4 4200 64MB 280/580, WD 800JB 80GB, IBM 60GXP 40GB, TEAC CD-W516EB, DVD-ROM Toshiba SD-M1612 RegionFree, Soundblaster Audigy, Creative Inspire 5.1 5300, Pinnacle Studio PCTV Pro, HP DeskJet 845C, mys A4Tech WOP-35, Genius SpeedWheel, Asec Perifer ATX

  7. #7

    Standardní

    Vyriesit sa to da vtedy, ked to vytvoris posuvanim. Nahodne generovanie je sprostost.
    1: Asus P2B 1.10 • Celeron 1100@1364/1.8V • 512MB SDRAM • Samsung SP1213N+WD AC28400 • Toshiba XM-6402B+SD-M1212 • PowerColor AR2L Radeon 9100 64MB • 3C900-Combo • Bt848A • ASB-3940UA • AWE-64 • DTK PTP-3007 • VisionMaster 405 • Umax UC630 • Star LC24-200 Colour 2: PCPartner TXB820DS • Cyrix MII PR300/1.8V • 256MB SDRAM • 2xSamsung HD400LD+IT8212F • Accesstek CW4001 • LS-120 • Mystique 4MB • Millennium II 4MB • 3C509 • CMI8329A+Dream MIDI • ADI ProVista E44 • SyncMaster 203B Notebook: DTK FortisPro TOP-5A • P166MMX/1.8V • 80MB EDO • Hitachi 5K80 40GB • 12,1" TFT Router: A-Trend ATC-1425B • i486DX 50@33/5V • 48MB FPM • WD AC14300 • UMC UM9003F • HP PC LAN 16/TP+ Car: Mazda 323P BA • Z5 1489ccm, 65kW@5500rpm, 134Nm@4000rpm

  8. #8
    Senior Member
    Založen
    21.10.2002
    Bydliště
    Liberec
    Příspěvky
    517
    Vliv
    282

    Standardní

    Mam dojem, ze resitelnost tohodle hlavolamu se dala nejak spocitat podle polohy kostek.

  9. #9

    Standardní

    je to tak, ze z nahodnej pozicie posunovanim dostanes bud
    1, 2, 3, 4,
    5, 6, 7, 8,
    9,10,11,12,
    13,14,15
    alebo
    1, 2, 3, 4,
    5, 6, 7, 8,
    9,10,11,12,
    13,15,14
    (t.j. 15 a 14 vymenene...)
    AthlonXP 1700+@1900+, Epox 8K3A, Volcano 7+, 512MB DDRAM Apacer PC266 CL2, MSI GeForce4 4200 64MB 280/580, WD 800JB 80GB, IBM 60GXP 40GB, TEAC CD-W516EB, DVD-ROM Toshiba SD-M1612 RegionFree, Soundblaster Audigy, Creative Inspire 5.1 5300, Pinnacle Studio PCTV Pro, HP DeskJet 845C, mys A4Tech WOP-35, Genius SpeedWheel, Asec Perifer ATX

  10. #10
    Senior Member
    Založen
    21.10.2002
    Bydliště
    Liberec
    Příspěvky
    517
    Vliv
    282

    Standardní

    Citace Původně odeslal Absurdus
    je to tak, ze z nahodnej pozicie posunovanim dostanes bud
    1, 2, 3, 4,
    5, 6, 7, 8,
    9,10,11,12,
    13,14,15
    alebo
    1, 2, 3, 4,
    5, 6, 7, 8,
    9,10,11,12,
    13,15,14
    (t.j. 15 a 14 vymenene...)
    Jo jasne, ale ja mel na mysli, ze se to dalo urcit uz z pocatecniho rozlozeni, se scitaly radky nejak nebo co a podle toho se dalo rict ze to je resitelny (ten 1. ripad cos psal) nebo ne (ten 2. pripad).

  11. #11

    Standardní

    hm, to by ma celkom zaujimalo, vies to niekde najst?

    minimalne by sa museli zratat aj riadky aj stlpce, kedze sucty riadkov su v koncovych poziciach rovnake...
    AthlonXP 1700+@1900+, Epox 8K3A, Volcano 7+, 512MB DDRAM Apacer PC266 CL2, MSI GeForce4 4200 64MB 280/580, WD 800JB 80GB, IBM 60GXP 40GB, TEAC CD-W516EB, DVD-ROM Toshiba SD-M1612 RegionFree, Soundblaster Audigy, Creative Inspire 5.1 5300, Pinnacle Studio PCTV Pro, HP DeskJet 845C, mys A4Tech WOP-35, Genius SpeedWheel, Asec Perifer ATX

  12. #12
    Senior Member
    Založen
    21.10.2002
    Bydliště
    Liberec
    Příspěvky
    517
    Vliv
    282

    Standardní

    "Výchozí sestava 1, 2, 3, ..., 13, 15, 14 je lichá permutace. Naopak přirozená řada 1, 2, 3, ..., 13, 14, 15 je sudá permutace." Takze nejak z toho vychazet, nejak spocitat, mozna jeste neco najdu. Mrkni sem.. http://www.cut-the-knot.org/pythagoras/history15.shtml

    Proste se najak scita pocet kolikrat je nejake cislo driv nez cisla ktera sou nizsi a podle souctu techto pripadu se to deli na resitelny (sudy pocet) a neresitelny (lichy pocet).

  13. #13

    Standardní

    MaPa: Díky za ten odkaz. To jsou docela zajímavý stránky. Hned se pustím do čtení.

  14. #14

    Standardní

    tak jsem se koukal do skript a asi te nepotesim. Konkretne jsme nebrali reseni 15. Pouze jsme si ukazovali obecne pristupy. Jedna se o tzv. informovane metody (heuristika). Dal bych ti link na skripta ale jsou v privat sekci. Myslim ze na netu neco z najdes. V nejhosim to vymyslis sam . Jak se rikal v kazdym kroku zkusis vsechny pohyby (max. 4) a pro kazdy spocitas cenu (sumu vzdalenosti) a pudes tou nejmensi.... (vis jak to myslim ne?).

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Podobná témata

  1. FAQ DvD to DivX
    Založil AjsTi v sekci fóra Programy a problémy s nimi
    Odpovědí: 186
    Poslední příspěvek: 04.01.2010, 20:56
  2. Odešlo chlazení na GF3Ti500 - jaké nové ??
    Založil pinky v sekci fóra NVIDIA grafické karty
    Odpovědí: 1
    Poslední příspěvek: 07.01.2003, 19:22

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •