题目链接:https://www.luogu.org/problemnew/show/P1346
思路:
这是一道隐藏的最短路问题
把每一个车站看成一个点,将这个车站相连的第一个车站建立一条权为0的边,
对于它所相连的其他车站,建立边权为1的边;
所用算法:
dijkstra
思路提示博客:
洛谷题解区第一个:https://www.luogu.org/problemnew/solution/P1346
#include <iostream>
#include<vector>
#include <climits>
using namespace std;
int n, s,t;
bool mark[101];
vector<vector<int> >map[101];
int dis[101];
int maxn = INT_MAX;
vector<int>v;
void search()
{
mark[s] = 1;
dis[s] = 0;
int count = 1;
while (count<=n)
{
int loc = 0;
int min = maxn;
for (int i = 1; i <= n; i++)
{