题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805347523346432
题意
给出地铁路线,依据:最少乘坐的站点>最少换乘次数
分析
本题是比较复杂的无向图DFS题目,必须用DFS,没有别的好办法了(因为有人说用Dijkstra+DFS会超时)。
1.整个地铁线路,视为无向图,用二维数组表示;
2.站点和几号线的换算问题,用unordered_map保存每两个相邻站中间的线路是几号线
满分代码
源自liuchuo,注释是我加的。
#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;
vector<vector<int>> v(10000);//地铁线路图 v[a]是一维向量,存a的所有相邻节点
int visit[10000];//DFS中标记节点有无被访问过
int minCnt;//最小站点数目
int