Coordenadas de un número en una matriz caracol.

propuesto por josejuan

Gracias a Enrique, ya sabemos cómo generar una matriz caracol pero, ¿una forma eficiente de devolver las coordenadas de un único número dentro de la matriz caracol?.

Enunciado
Sea NxN las dimensiones de la matriz caracol, encontrar la posición (X, Y) que ocupa, dentro de esa matriz, el número P (se puede asumir que 1 <= P <= N^2).
Preguntas sobre el desafío

¿Tienes dudas sobre el desafío? plantéala aquí

Plantea tu pregunta

3 Soluciones

Dar mi solución

0votos
Coordenadas de un número en una matriz caracol. en Groovy
por

rchavarriat

hace 6 años

Está claro que una solución eficiente no es recorrer toda la matriz hasta dar con el número buscado, así que con la cuenta de la vieja he llegado a una solución prácticamente igual a la de josejuan, pero no me queda claro cómo averigua él a qué anillo/perímetro/cuadrado pertenece un número dado (yo lo calculo recursivamente). En el README subido a github explico qué he considerado los conceptos 'ring', 'side' y demas: https://github.com/rchavarria/solveet-problems/tree/master/spiral-matrix-coor

Dar mi solución