Herramientas de usuario

Herramientas del sitio


algoritmos-oia:grafos:bfs:distintas-movidas-en-tablero

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
algoritmos-oia:grafos:bfs:distintas-movidas-en-tablero [2018/01/07 04:32]
sebach
algoritmos-oia:grafos:bfs:distintas-movidas-en-tablero [2018/01/07 05:02] (actual)
guty [Ir a casillas vecinas]
Línea 16: Línea 16:
 Para hacer esto, podemos tener dos vectorcitos,​ $dx$ y $dy$, que en la posición $i$, los vectores nos digan que para ir al i-ésimo vecino debo moverme $dx[i]$ en la dirección $x$, y $dy[i]$ en la dirección $y$. Para hacer esto, podemos tener dos vectorcitos,​ $dx$ y $dy$, que en la posición $i$, los vectores nos digan que para ir al i-ésimo vecino debo moverme $dx[i]$ en la dirección $x$, y $dy[i]$ en la dirección $y$.
  
-Para ir a las casillas vecinas como dijimos, tendríamos ​$vector<​int>​ dx = {1, -1, 0, 0};$vector<​int>​ dy = {0, 0, 1, -1};$+Para ir a las casillas vecinas como dijimos, tendríamos ​''​vector<​int>​ dx = {1, -1, 0, 0};'' ​''​vector<​int>​ dy = {0, 0, 1, -1};''​
  
  
Línea 30: Línea 30:
 Para simular las movidas desde la posición $(a, b)$, haremos un for para cada movida $i$ e iremos a la posición $(a+dx[i], b+dy[i])$ del tablero, siempre y cuando no nos hayamos ido del límite del tablero. Para simular las movidas desde la posición $(a, b)$, haremos un for para cada movida $i$ e iremos a la posición $(a+dx[i], b+dy[i])$ del tablero, siempre y cuando no nos hayamos ido del límite del tablero.
  
-Para el movimiento mencionado del caballo, empezando por el de "​arriba a la derecha",​ los vectores quedarían:+Para el movimiento mencionado del caballo, empezando por el de "​arriba a la derecha" ​y siguiendo en sentido horario, los vectores quedarían:
 <code cpp> <code cpp>
 // incrementar en x significa ir a una fila mas abajo, incrementar y significa ir a una columna mas a la derecha // incrementar en x significa ir a una fila mas abajo, incrementar y significa ir a una columna mas a la derecha
-vector<​int>​ dx = {-2, -1, 1, 2,  2,  1, -1, -2} +vector<​int>​ dx = {-2, -1, 1, 2,  2,  1, -1, -2}; 
-vector<​int>​ dy = { 1,  2, 2, 1, -1, -2, -2, -1}+vector<​int>​ dy = { 1,  2, 2, 1, -1, -2, -2, -1};
 </​code>​ </​code>​
  
algoritmos-oia/grafos/bfs/distintas-movidas-en-tablero.1515299551.txt.gz · Última modificación: 2018/01/07 04:32 por sebach