Consigna y resolución del segundo parcial realizado en Programacion con Objetos II con Python resuelto con el algoritmo de Dijkstra utilizando las bibliotecas networkx y matplotlib
Descripción del problema : un colectivo escolar recoge alumnos de un barrio lejano y viaja todas las mañanas hasta la escuela, siempre eligiendo el camino más corto. La ciudad, dentro de la cual se desplaza el colectivo, se puede representar con un mapa de esquinas unidas por calles, cada calle tiene una sola mano. Las esquinas han sido numeradas. Para ahorrar tiempo el colectivo sale de una esquina del barrio y los padres acercan sus hijos al mismo. El intendente de la ciudad quiere reducir además el tiempo del recorrido matutino del colectivo, para lo cual ofreció cambiar la mano de todas las calles que sea necesario, con el fin de que el trayecto sea mínimo. Antes de concretar la medida el intendente quiere saber el largo resultante y las calles a modificar para lograr el mínimo recorrido. Puedes ayudarle escribiendo un programa que evalúe la distancia que surja tras realizar los cambios de sentido y la individualización de las calles que debieran cambiar.
Si la entrada fuera : Donde la primer linea es numero de esquina de salida del colecivo, numero de esquina de la ubicacion del colegio. Su segunda linea la cantidad de esquinas. Y el resto de lineas X (Esq de salida de calle), Y (Esq de llegada), R (Distancia)
||¦| 2 7 13 ||||| 2 4 4 2 1 5 2 3 2 3 1 3 4 1 4 7 5 3 1 5 3 1 6 7 8 4 2 6 8 1 8 7 6 6 7 8 5 3 2
El programa tendra que hacer un print de: 7 6 13 Donde 7 representa la distancia del camino mas corto que se puede lograr, el 6 el numero de calle a cambiar, el 13 el numero de calle a cambiar