With this programming puzzle, you implement a pathfinding algorithm like A star, store and process the map of a city in the form of a graph. You can also use Dijkstra's algorithm to solve the puzzle. Given a list of train stations, their locations and connections, a starting point, and a final point, determine the names of the stations from the start to the end, based on the shortest path.