Cómo resolver esto usando programación dinámica

Supongo que está preguntando sobre la caminata más corta, porque la solución al problema de cualquier caminata es trivial, como ya se señaló en los comentarios, DFS sería suficiente.

Y para el problema sobre la caminata más corta: no creo que pueda encontrar alguna solución que sea significativamente mejor que Bitmask DP.

Suponga que todos los bordes tienen un costo 1. Si sabe cómo verificar que la respuesta a su problema es N-1 (caminar sin repeticiones), sabe cómo verificar que el gráfico dado contiene la ruta hamiltoniana que comienza en el nodo 1. Esto significa que su problema es al menos tan difícil como el problema del camino hamiltoniano (porque una buena solución a su problema nos dará una buena solución al problema del camino hamiltoniano ; puede probar todos los puntos finales posibles con su problema original y le dirá la respuesta para el problema del camino hamiltoniano ).

El problema del camino hamiltoniano es NP completo ; hasta ahora no se ha encontrado una solución de tiempo polinómico para este tipo de problemas. Esto implica que la solución de tiempo polinómico para su problema también no se conoce hoy en día.