Asuntos Oficiales > Retos
El Reto Es Sencillo
The Black Boy:
Hola: Amigos.
Este reto no es muy complicado pero tiene su arte y su lógica para desarrollarlo.
El Reto consta de 2 partes y dice asi:
primera parte::
Imagino que todos en alguna oportunidad han jugado ajedrez o bueno la gran mayoria; y a su vez conocen como se mueven todas las fichas, la cuestion es solo para el "caballo" como sabemos el caballo se mueve realizando una 'L' y este moviendo consta de 2 pasos alfrente y uno hacia el lado.
Ubicando el caballo en cualquier parte del tablero de ajedrez, realizar 64 movimientos(Cantidad de cuadros en el tablero) y pizar todas las casillas de el tablero.
de la misma forma el programa debe decir si se pueden realizar esta tarea desde cualquier cuadro del tablero(o sea que el programa debe verificar los recorridos desde todos los cuadros ).
Se pide optimizacion de recursos de maquina(o sea que el programa no se demore mucho tiempo realizando esta tarea).
Segunda parte::
Este parte es mas facil, siguiendo con el tema del ajedrez ahora es con la "Reina" y sabemos que la reina se mueve en cualquier sentido la cantidad de cuadros que se desee:
La cuestion esta en ubicar 8 reinas en el tablero y que no se maten entre ellas; diciendo al final cuantas posibilidades existe de ubicar 8 reinas sin que se maten entre ellas.
bueno la eleccion del lenguaje es criterio de cada uno de u'ds..
y al que desee y tenga tiempo.
:smartass: ___Saludos___ :smartass:
shephiroth:
Buenas. La verdad que ambas pruebas que presentas no estan del todo ajustadas.
En la primera. Si realizas 64 movimientos es porque en una casillas has pasado 2 veces....se interpreta que tienes que terminar donde empiezas?? La forma de hacerla es fácil, y esta será (creo) la forma más optimizada que hay. Manualmente, antes de programar, te preparas un recorrido circular (es decir, donde piezas acabas) pasando por todos. Una vez tienes el recorrido, y en una matriz de 8*8, y simulando el sistema FAT puedes establecer el camino que ha de seguir. Cuando el usuario te indica en que posicion del tablero esta simplemente lo localiza en la matriz y va realizando el recorrido predeterminado empezando desde la posicion determinada.
La segunda, lo estoy pensando, y ya me perdonarás pero la septima no consigo colocarla de ninguna de las maneras. Pero he pensado poco, con este estaré un poco más xDD
The Black Boy:
:hola: tienes razon sabes..
pero la cuestion del caballo es que donde empiezes no es necesario terminar por lo tanto si.. solo serian 63 :devil: ... :whistling:
y el de las damas(Reinas) es ma sencillo se me hace a mi..
___Saludos y suerte con eso___ :lightsabre:
Nagisa:
Con el de los caballos si fuerzas a que termines donde empiezas, la segunda parte del problema sobra.
--- Citar ---de la misma forma el programa debe decir si se pueden realizar esta tarea desde cualquier cuadro del tablero(o sea que el programa debe verificar los recorridos desde todos los cuadros)
--- Fin de la cita ---
Mas que nada por que si acbas donde empiezas, el recorrido es ciclico y has pisado todas las casillas.
El de las damas me parece mus sencillo. Tomas una matriz 8*8 buscas una posicion "vacia", pones una reina y marcas las casillas que amenza, asi hasta que coloques las 8. Este metodo es un poco basto, y si no funciona asi, se podria hacer recursivamente y predeterminando la casilla inicial (es decir, si colocando la 1ª reina en el (1,1) no se puede, colocala en el (2,1) y vuelve a probar).
JuanK:
Nagisa...
eso no es una solucion..
la saolucion es hacer el programa y que funcione.
Black Boy: cuando caduca tu reto?
Navegación
[#] Página Siguiente
Ir a la versión completa