题目连接
https://vjudge.net/contest/313997#problem/D
大体思路:
这个题用floyd 会T的
所以就要 顺
这跑一边最短路, 逆
着跑一边最短路
详细思路+代码
/******
题目要求: 是 询问 最快来回一趟, 耗时最大的那头牛所用的时间
两边单源最短路就行
①首先可以求出 从聚会点返回到牛棚的最短路径【这个你们都会】
②从牛棚去的时候的最短路径就是:
可以看成 从聚会点沿着路 反向的最短路( u到v 的最短路 可以看成 v到u的 沿着路反向走的最短路径)
*******/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#define ll long long
using namespace std;
const int maxn = 1e3+50;
const ll inf = 0x3f3f3f3f;
ll mp[maxn][maxn];
ll mp2[maxn][maxn];// 存反向图
int N, M, X;
void init()
{
for(int i = 1;i <= N;i++)
{
for(int j = 1;j <= N;j++)
{
mp[i][j] = inf;
mp2[i][j] = inf;
}
}
for(int