#include<iostream>
#include<cstring>
#include<algorithm>
#include<iomanip>
#include<cmath>
#include<cstdio>
using namespace std;
#define MAXN 1004
#define INF 0x3f3f3f3f
/*
18 08
18 23
超时
18 24
18 33
超时
18 41 AC
有向图,所有结点中到终点来回距离的最大值
对每个节点求最短路得到to[MAXN],对终点求最短路的back[MAXN]
n3!超时!
只需将有向图反转一次(有向路径反向),对终点求两次Dijk即可
max(to+back)
*/
bool been[MAXN];
int lowcost[MAXN],g[MAXN][MAXN],m,n,x,ans=-;
int to[MAXN],back[MAXN];
void Read()
{
int x,y,d;
for(int i=;i<m;i++)
{
scanf("%d%d%d",&x,&y,&d);
g[x][y] = d;
}
}
void Init()
{
memset(lowcost,INF,sizeof(lowcost));
memset(been,false,sizeof(been));
}
void Dijkstra(int beg,int tmp[])
{
Init();
lowcost[beg] = ;
for(int j=;j<n;j++)
{
int Min = INF,k = -;
for(int i=;i<=n;i++)
{
if(!been[i]&&lowcost[i]<Min)
{
Min = lowcost[i];
k = i;
}
}
if(k==-) break;
been[k] = true;
for(int i=;i<=n;i++)
{
if(!been[i]&&lowcost[i]>lowcost[k]+g[k][i])
{
lowcost[i] = lowcost[k]+g[k][i];
}
}
}
for(int i=;i<=n;i++)
{
if(i==beg) continue;
tmp[i] = lowcost[i];
}
}
int main()
{
scanf("%d%d%d",&n,&m,&x);
memset(g,INF,sizeof(g));
Read();
Dijkstra(x,back);
for(int i=;i<=n;i++)
{
for(int j=i+;j<=n;j++)
{
int t = g[i][j];
g[i][j] = g[j][i];
g[j][i] = t;
}
}
Dijkstra(x,to);
for(int i=;i<=n;i++)
{
ans = max(ans,back[i]+to[i]);
}
printf("%d\n",ans);
return ;
}

kuangbin专题最短路 D - Silver Cow Party的更多相关文章

  1. (最短路)Silver Cow Party --POJ--3268

    题目链接: http://poj.org/problem?id=3268 题意: 先求出所有牛到x的最短路,再求出x到所有牛的最短路,两者相加取最大值(单向图)(可以用迪杰斯特拉,SPFA) 迪杰斯特 ...

  2. Silver Cow Party(最短路,好题)

    Silver Cow Party Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Su ...

  3. poj 3268 Silver Cow Party(最短路)

    Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17017   Accepted: 7767 ...

  4. POJ 3268——Silver Cow Party——————【最短路、Dijkstra、反向建图】

    Silver Cow Party Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Su ...

  5. POJ - 3268 Silver Cow Party SPFA+SLF优化 单源起点终点最短路

    Silver Cow Party One cow from each of N farms (1 ≤ N ≤ 1000) conveniently numbered 1..N is going to ...

  6. POJ 3268 Silver Cow Party 最短路

    原题链接:http://poj.org/problem?id=3268 Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total ...

  7. POJ3268 Silver Cow Party —— 最短路

    题目链接:http://poj.org/problem?id=3268 Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total ...

  8. POJ 3268 Silver Cow Party 单向最短路

    Silver Cow Party Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 22864   Accepted: 1044 ...

  9. poj3268 Silver Cow Party(最短路)

    非常感谢kuangbin专题啊,这道题一开始模拟邻接表做的,反向边不好处理,邻接矩阵的话舒服多了. 题意:给n头牛和m条有向边,每头牛1~n编号,求所有牛中到x编号去的最短路+回来的最短路的最大值. ...

随机推荐

  1. G - And Then There Was One (约瑟夫环变形)

    Description Let’s play a stone removing game. Initially, n stones are arranged on a circle and numbe ...

  2. ACM_求f(n)

    求f(n) Time Limit: 2000/1000ms (Java/Others) Problem Description: 设函数f(n)=1*1*1+2*2*2+3*3*3+...+n*n*n ...

  3. windows 定时任务 设置 安全事项

    windows 定时任务 设置 安全事项 1.如果是oaadmin/administrator 创建oracle 数据库. 安全选项如下: 1.只是在用户登录时候运行. sample: data ho ...

  4. MySql学习笔记(1)-安装

    一.安装环境 操作系统:win7 64ibt MySql版本:5.7.10.0 二.安装过程 1.点击Add 2.选择需要安装的组件 3.Excute 4.Next 5.Next 6.进入服务器配置 ...

  5. leetcode516 Longest Palindromic Subsequence

    思路: 区间dp. 实现: class Solution { public: int longestPalindromeSubseq(string s) { int n = s.length(); ] ...

  6. Magento 多站点多域名安装教程(可以设置手机模版哟,亲 \(^o^)/)

    这篇文章是安装magento子域名的教程,请先进行安装之前,确认以下几点: 1.请先确认子域名是否已经指向你的服务器 2.可以编辑.htaccess文件 3. 熟悉Cpanel操作 我们的目标是建立一 ...

  7. echarts之我用

    最近在用echarts做项目,抽点时间总结一下. 首先说一下什么是echarts.echarts是百度开发的类似于fusioncharts的图表展示控件.区别于fusioncharts的是echart ...

  8. Xamarin.Forms android实现沉浸式

    在android项目里,这样设置 using System; using Android.App; using Android.Content.PM; using Android.Runtime; u ...

  9. 26-Ubuntu-文件和目录命令-其他命令-管道

    管道 Linux允许将一个命令的输出可以通过管道作为另一个命令的输入. 可以理解为现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里的 | 左右分为两端,左端塞东西(写),右端取东西(读). ...

  10. 【Hadoop】二、HDFS文件读写流程

    (二)HDFS数据流   作为一个文件系统,文件的读和写是最基本的需求,这一部分我们来了解客户端是如何与HDFS进行交互的,也就是客户端与HDFS,以及构成HDFS的两类节点(namenode和dat ...