Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

courses:a4m33pal:uloha3-2010 [2010/11/16 09:48]
timmy
courses:a4m33pal:uloha3-2010 [2025/01/03 18:28] (aktuální)
Řádek 3: Řádek 3:
 Šachová koncovka Šachová koncovka
  
-[[http://​cw.felk.cvut.cz/​lib/​exe/​fetch.php/​courses/​a4m33pal/​cviceni/​chessassignment2.pdf|Provizorní zadání]]+[[http://​cw.felk.cvut.cz/​courses/​a4m33pal/​task.php?​task=sachy|Zadání]]
  
-Limit: ​?s+Limit: ​variabilní od 1s do 25s
  
 ===== Jak na to: ===== ===== Jak na to: =====
Řádek 24: Řádek 24:
     * Bílý hráč zvolí radši neurčito před patem     * Bílý hráč zvolí radši neurčito před patem
   * Když někde výhra probublá až nahoru, končíme algoritmus   * Když někde výhra probublá až nahoru, končíme algoritmus
- 
 ==== Implementace ==== ==== Implementace ====
 Závisí na ukládání situací (uzlů): Závisí na ukládání situací (uzlů):
-  * figury se dají uložit jako proměnné obsahující číslo 0..48 značící souřadnice,​ -1 = vyhozená figura +  * figury se dají uložit jako proměnné obsahující číslo 0..48 značící souřadnice,​ -1 = vyhozená figura (tady by mohl ale asi nastat problém s hashováním dané šachovnice - v té úloze to bude potřeba)
-(tady by mohl ale asi nastat problém s hashováním dané šachovnice - v té úloze to bude potřeba)+
   * nebo lze celá situace zakódovat binárně do jednoho intu   * nebo lze celá situace zakódovat binárně do jednoho intu
  
Řádek 72: Řádek 70:
  
   * Problém je v tom, že v Javě jsou všechny typy se znaménkem...tedy první bit ve 32 bitovém intu určuje znaménko a my potřebujem i tenhle bit...takže se bude stávat že výsledný hash bude záporný. Kvůli tomu nemůže výsledný hash označovat index v poli, kam by se hashe ukládali. ​   * Problém je v tom, že v Javě jsou všechny typy se znaménkem...tedy první bit ve 32 bitovém intu určuje znaménko a my potřebujem i tenhle bit...takže se bude stávat že výsledný hash bude záporný. Kvůli tomu nemůže výsledný hash označovat index v poli, kam by se hashe ukládali. ​
 +
 +  * A co treba pouzit 64bit int? Tim by se vyresil problem se znamenkem a navic by se vytvoril prostor pro dalsi zajimave informace (napriklad kdo je na tahu).
  
   * Ono ale stejně mít pole velké jako rozsah intu (2^32) je sebevražda. Neví někdo o nějakém lepším ukládání ? (zřetězený seznam a tak)   * Ono ale stejně mít pole velké jako rozsah intu (2^32) je sebevražda. Neví někdo o nějakém lepším ukládání ? (zřetězený seznam a tak)
Řádek 83: Řádek 83:
  
 Jediné co mě napadlo je zkusit cyklit od střelce směrem doleva nahoru, doprava nahoru atd. dokud nenarazí na jinou figurku/​konec šachovnice. Tohle by šlo ještě vylepšit tím, že by se rovnou v poli reprezentujícím šachovnici označili pozice ostatních figurek a při tom cyklení by se jen koukalo jestli se nenarazilo na označený pole - odpadnou tak v nejhorším případě 4 testy na každé pole, bude je 1 test. Jediné co mě napadlo je zkusit cyklit od střelce směrem doleva nahoru, doprava nahoru atd. dokud nenarazí na jinou figurku/​konec šachovnice. Tohle by šlo ještě vylepšit tím, že by se rovnou v poli reprezentujícím šachovnici označili pozice ostatních figurek a při tom cyklení by se jen koukalo jestli se nenarazilo na označený pole - odpadnou tak v nejhorším případě 4 testy na každé pole, bude je 1 test.
 +
 +
 +== Generator tahů /poznamka/ ==
 +
 +No a hele tak jsem ohledne toho generovani tahu nasel neco v odkazu ze zadani [[http://​chessprogramming.wikispaces.com/​General+Setwise+Operations|tady]] , a napadlo mne, co teda udelat pro kazdou figurku boolean pole 14*14, ktery by se vzdycky posadilo na sachovnici tak, aby byla figurka na svym miste, cimz (po odecteni pripadu kde je neco v ceste) dostanem rovnou vsechny pozice figurky po tahu reprezentovany jednickou na sachovnici:
 +{{:​courses:​a4m33pal:​screen_shot_2010-11-18_at_1.36.03_am.png|}}
 +
 +Pro pouziti v tomhle pripade by se jeste matice dala preskladat do pole (protoze sachovnice se reprezentuje vlastne v poli) a delat logickej and nad dvema polema.. ​
 +
 +Co myslite? nebo nekdo pouziva nejakej lepsi zpusob?
 +JaRda
 +
 +
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
  
  
courses/a4m33pal/uloha3-2010.1289897302.txt.gz · Poslední úprava: 2025/01/03 18:24 (upraveno mimo DokuWiki)
Nahoru
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0