Ver Mensaje Individual
  #64 (permalink)  
Antiguo 22/12/2013, 12:39
Avatar de marlanga
marlanga
 
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 9 años, 1 mes
Puntos: 206
Respuesta: Propuesta para desafíos javascript 2014

Sí, pero pon el código completo funcionando en jsfiddle, para que cualquiera pueda probarlo abriendo simplemente el enlace. No requiere registrarse para guardar códigos, simplemente aprieta el "save" de arriba a la izquierda.

Y cuidado, las pruebas las haré en varias coordenadas, buscando puntos flacos. Por ejemplo, si pongo la posición inicial del jugador en [1,1], en la línea 24 de mi enlace jsfiddle con el juego, tu algoritmo obtiene 32 puntos, que es la mitad de los puntos totales.

Tu algoritmo es correcto, pero en cuanto a puntuación, te pueden batir. No obstante ser el primero en resolver un ejercicio suele tener mayor mérito xd. Si quieres, puedes reenviar tu solucion tantas veces como quieras, en la lista de resultados utilizaré tu último envío.


Por otro lado, y como posible consejo a seguir, se puede sacar todo el código aparte, y utilizarlo dentro del método IA de tron. En realidad sólo se necesitaría calcular el mejor camino una sola vez.
Así que un esqueleto de IA podría ser:

Código Javascript:
Ver original
  1. TRON.prototype.ia=function()
  2. {
  3.     if (camino==null)
  4.     {
  5.        camino=crearCamino(copia de posicion, copia de mapa);
  6.     }
  7.  
  8.     //Código para procesar el objeto "camino" con el
  9.    //objetivo de devolver la mejor direccion en esta llamada
  10. }

La variable camino y la función crearCamino habría que declararlas globalmente, arriba del todo, como primera línea de todo el javascript, para que sean visibles dentro de TRON.

Última edición por marlanga; 22/12/2013 a las 12:53