Haciendo referencia a la imagen de abajo aquí , x e y significan coordenadas. Para la parte de coordenadas simétricas, la numeración será también simétrica y si no lo es, se seguirá sumando el índice i+1. Para coordenadas que son iguales entre sí, el índice permanecerá constante. He adjuntado un archivo codepen aquí para el área de juegos de javascript. El resultado que quiero es el índice en la matriz como se muestra en la imagen. ¿Cómo hago para resolver este algoritmo :)?
Gracias por leer
x_all=[102,152, 202,252 ,202,152, 302,454 ,8745,8745 ,25, 25, 23, 10 , 332, 10 , 67 , 90, 67 ,8967]; y_all=[12, 153, 20, 52, 20, 153, 302,8745,9065,9065, 52, 34, 9 ,232, 9 , 232, 89 ,91, 89 ,8954]; arr=[]; jj=0 for (let i=0;i<x_all.length;i++){ if (x_all[i+1]==x_all[i-1]){ console.log(i) jj=jj-1; arr.push(jj+1) } arr.push(jj) jj=jj+1; } console.log(arr)EXENCIÓN DE RESPONSABILIDAD DE LA RESPUESTA PARCIAL : no comprendí completamente la pregunta (¡la imagen en la pregunta, https://ibb.co/qssJk3K , tampoco está accesible!), por lo que esta no es de ninguna manera la respuesta completa.
pero meh 🤷♀️ lo encontró algo interesante de resolver, así que probé esto . Espero eso ayude.
Esto es lo que probé: para
x_all=[102,152, 202,252 ,202,152, 302,454 ,8745,8745 ,25, 25, 23, 10 , 332, 10 , 67 , 90, 67 ,8967];
Se encontraron palíndromos adjuntos y se agregaron a palindrome_x
[[152,202,252,202,152], [8745,8745], [25,25], [10,332,10], [67,90,67]]Usó una matriz de índices para empujar y abrir según sea necesario. Entonces el
Final Output For x: 1,2,3,4,3,2,5,6,7,7,8,8,9,10,11,10,12,13,12,14
No estoy seguro de si esto es lo que se requiere... Pero hay declaraciones comentadas de console.log -er para una mayor depuración.