Šta je novo?

8 DAMA i Shahovska tabla

Combuster

Čuven
Učlanjen(a)
21.03.2002
Poruke
166
Poena
619
Evo moj ortak programer oce da proveri da li neko zna za problem 8 dama (kako 8 dama rasporediti po shahovskoj tabli inache problem se koristi za proveravanje generatora sluchajnih brojeva (makar tako mislim da mi je rekao :D))
Pomenuo mi je i neku kornjachu :D
 
Combuster je napisao(la):
Evo moj ortak programer oce da proveri da li neko zna za problem 8 dama (kako 8 dama rasporediti po shahovskoj tabli....
a6,b1,c5,d2,e8,f3,g7,h4
 
Combuster je napisao(la):
Evo moj ortak programer oce da proveri da li neko zna za problem 8 dama (kako 8 dama rasporediti po shahovskoj tabli inache problem se koristi za proveravanje generatora sluchajnih brojeva (makar tako mislim da mi je rekao :D))
Pomenuo mi je i neku kornjachu :D
Taj problem je jedan od najpopularnijih načina za ispitivanje banch prediction-a kod procesora. Algoritam za rešavanje tog problema je pun "ispitaj i skoči" instrukcija koje je jako teško predvideti pa stavlja branch predistion jedinicu pred težak zadatak, na kakav neće naići ni u jednoj realnoj aplikaciji. Zapravo algoritam izračunava na koja polja treba da se postavi "n" dama na tablu dimenzije n x n, za zadati parametar n, tako da ni jedna ne bude na udaru neke druge. Ja nisam čuo za neku drugu primenu, e sad' možda je neko bio kreativan. :)

Nadam se da sam ti pomogao. :)
 
Problem 8 dama je tipichan problem koji se reshava backtrack algoritmima (dakle puno nepredvidivih skokova, obracanja stack-u zbog rekurzije itd) pa je zato pogodan za testiranje branch-prediction unit-a.
 
ma nema tu nikakve rekurzije bre ja napravio pre 8 godina programce na 286 radi za nxn tablu u vremenu O(n!)
 
Dobro, nema rekurzije. Josh sezdesetih godina dokazano je da se svaki rekurzivni program moze napraviti iterativno, ali se broj skokova u samom programu bitnije ne menja. Naime, kada rekurzivni program prepravljash na iterativni ti svakako morash da simulirash stack na neki nachin, pa se svodi na isto. A jedino moguce reshenje takvog problema je backtrack.
 
Uzgred, algoritam radi u vremenu O(n^n)
 
ne simuliram nikakav stek uzgred n! je takoreci isto sto nxn slicno....znaci radi se bez steka...
 
zagortenej je napisao(la):
ne simuliram nikakav stek uzgred n! je takoreci isto sto nxn slicno....znaci radi se bez steka...

Jesi li ti lud... n!, brrrrrrr
 
deluje sasavo ali ... nisam lud. ma nema veze da prekinemo sa ovim ... dzaba nama sahovske table od toga nema leba....
 
Zaista ne znam koliko je to koristan test.

Ja sam to probavo na c64 i malim programčićem i čak na tome radi, sa onim BASIC-om.
 
Ko ne zna resenje, ima ga u Cabarkapinim knjigama (svim). To je cest problem kao i Hanojska kula... Nesto cime obicno zamaraju srednjoskolce
 
Nazad
Vrh Dno