Por lo que recuerdo de clase (que a esta alturas es poco

) hay varias estrategias para resolverlo.
Una de las más fáciles de implementar es "Prueba y error".
Se trata de evaluar todas las posibilidades e ir descartando las que no son correctas. En tu caso recorrer todas las celdas del tablero, e ir descartando las que no son accesibles o no están a accesibles con tu tirada.
Te queda generar una función que te devuelva la distancia entre 2 celdas del tablero.