rendered paste body444 void astar_print_path(map<node*,node*> came_from, node* current, node *start)445 {446 node *x;447 if (came_from.find(current) == came_from.end())448 return;449 x = came_from[current];450 if (x == start) {451 printf("Start at #%s#\n", x->name.c_str());452 return;453 }454 astar_print_path(came_from, x, start);455 /* see if this is the last node on its line */456 if (x->curlink != current->curlink) {457 printf("Take #%s# to #%s#\n", lines[x->curlink].c_str(), current->name.c_str());458 }459 puts(lines[x->curlink].c_str());460 puts(current->name.c_str());461 }#tart at #AmershamMetropolitan LineChorleywoodMetropolitan LineRickmansworthMetropolitan LineMoor ParkMetropolitan LineNorthwoodMetropolitan LineNorthwood HillsMetropolitan LinePinnerMetropolitan LineNorth HarrowMetropolitan LineHarrow-on-the-HillMetropolitan LineNorthwick ParkMetropolitan LinePreston RoadMetropolitan LineWembley ParkMetropolitan LineFinchley RoadMetropolitan LineBaker StreetMetropolitan LineGreat Portland StreetMetropolitan LineEuston SquareMetropolitan LineKing's Cross St. PancrasMetropolitan LineFarringdonMetropolitan LineBarbicanMetropolitan LineMoorgateMetropolitan LineLiverpool Street# to #Bethnal GreenLineMetropolitan LineBethnal GreenCentral LineMile EndCentral LineStratford# to #West HamLineCentral LineWest HamJubilee LineCanning Town# to #Royal VictoriaJubilee LineRoyal VictoriaDocklands Light RailwayCustom HouseDocklands Light RailwayPrince RegentDocklands Light RailwayRoyal AlbertDocklands Light RailwayBeckton ParkDocklands Light RailwayCyprusDocklands Light RailwayGallions Reach# to #Becktonds Light RailwayDocklands Light RailwayBeckton