05-03-2009, 12:05 AM
(petite parenthèse à 23h00 ... en hexagonale, tu aurais moins de choix à faire ^^. y'a que 6 cases autour de toi, au lieu de 8 dans ton exemple)
Pour raccourcir ton algo. Si tu peux te déplacer en Diagonal ... tu peux estimer que ton joueur n'ira jamais à plus de 20 cases de ton points X. Cela fait donc (20 + 1 + 20 ) * (20 + 1 + 20 ) = 1681 cases à tester au maximum !
Ensuite, dans la manière que tu indiques, il faut que tu te dises qu'une case déjà testé, c'est une information importante.
Dans ton cas, recherche toutes les cases adjacentes à ta position initiale et associe leur la valeur 1. puis toutes les cases encore adjacente n'ayant encore pas de valeur et associe la valeur 2, ainsi de suite ...
Si y'a un mur, indique une valeur limite (exemple 10 000)
Tu dois pouvoir trouver un système plus rapide ^^
Kéké
Pour raccourcir ton algo. Si tu peux te déplacer en Diagonal ... tu peux estimer que ton joueur n'ira jamais à plus de 20 cases de ton points X. Cela fait donc (20 + 1 + 20 ) * (20 + 1 + 20 ) = 1681 cases à tester au maximum !
Ensuite, dans la manière que tu indiques, il faut que tu te dises qu'une case déjà testé, c'est une information importante.
Dans ton cas, recherche toutes les cases adjacentes à ta position initiale et associe leur la valeur 1. puis toutes les cases encore adjacente n'ayant encore pas de valeur et associe la valeur 2, ainsi de suite ...
Si y'a un mur, indique une valeur limite (exemple 10 000)
Tu dois pouvoir trouver un système plus rapide ^^
Kéké