求(Dijkstra算法,求每条路径上的最小值 的最大值)和青蛙的那题类似;
 
#include<iostream>
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#define INF 0xfffffff
#define N 1100
using namespace std; int n,m,dist[N],vis[N];
int maps[N][N]; void Init()
{
int i,j;
memset(vis,,sizeof(vis));
for(i=;i<=n;i++)
{
dist[i]=;
for(j=;j<=n;j++)
{
maps[i][j]=;
}
}
} void Dij(int Start,int End)
{
int Max,index,i,j;
dist[Start] = INF;
for(i = ; i <= n; i++)
{
index=-;
Max=;
for(j = ; j <= n; j++)
{
if(vis[j] == && Max < dist[j])
{
Max = dist[j];
index = j;
}
}
if(index == -)break;
vis[index] = ;
for(j = ; j <= n; j++)
{
if(vis[j] == &&dist[j] < min(dist[index],maps[index][j])) dist[j] = min(dist[index],maps[index][j]);
}
}
} int main()
{
int T,t=,a,b,c;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m); Init(); while(m--)
{
scanf("%d%d%d",&a,&b,&c); maps[a][b] = maps[b][a] = max(maps[a][b],c);
}
Dij(,n); printf("Scenario #%d:\n%d\n\n",t++,dist[n]);
}
return ;
}

下面是相当于求最大生成树的方法

#include <iostream>
#include <cstdio>
#include <cstring>
#include <stdlib.h>
#include <math.h>
#include <queue>
#include <algorithm>
using namespace std;
#define N 1210
#define INF 0xfffffff int dist[N], maps[N][N], vis[N], n, ans;
void Dij(int s, int e)
{
for(int i=; i<=n; i++)
dist[i] = maps[s][i];
for(int i=; i<=n; i++)
{
int Max = , Index = -;
for(int j=; j<=n; j++)
{
if(vis[j]== && Max<dist[j])
{
Max = dist[j];
Index=j;
}
}
if(Index == -)break; vis[Index]=; ans=min(ans, dist[Index]); if(Index==n)return ; for(int j=; j<=n; j++)
{
if(vis[j]== && dist[j]<maps[Index][j])
dist[j] = maps[Index][j];
}
}
}
int main()
{
int T, t=, m, a, c, b;
scanf("%d", &T);
while(T--)
{
scanf("%d%d", &n, &m);
memset(vis, , sizeof(vis));
for(int i=; i<=n; i++)
{
for(int j=; j<=n; j++)
maps[i][j]=;
dist[i]=maps[i][i]=;
}
for(int i=; i<=m; i++)
{
scanf("%d%d%d", &a, &b, &c);
maps[a][b] = maps[b][a] = max(maps[a][b], c);
}
ans = INF;
Dij(, n);
printf("Scenario #%d:\n", t++);
printf("%d\n\n", ans);
}
return ;
}

Heavy Transportation---poj1797的更多相关文章

  1. (最短路) Heavy Transportation --POJ--1797

    链接: http://poj.org/problem?id=1797 Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K To ...

  2. POJ--1797 Heavy Transportation (最短路)

    题目电波: POJ--1797 Heavy Transportation n点m条边, 求1到n最短边最大的路径的最短边长度 改进dijikstra,dist[i]数组保存源点到i点的最短边最大的路径 ...

  3. POJ1797 Heavy Transportation 【Dijkstra】

    Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 21037   Accepted:  ...

  4. (Dijkstra) POJ1797 Heavy Transportation

    Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 53170   Accepted:  ...

  5. POJ1797:Heavy Transportation(改造Dijkstra)

    Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 52728   Accepted:  ...

  6. POJ1797 Heavy Transportation —— 最短路变形

    题目链接:http://poj.org/problem?id=1797 Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K T ...

  7. POJ 1797 Heavy Transportation / SCU 1819 Heavy Transportation (图论,最短路径)

    POJ 1797 Heavy Transportation / SCU 1819 Heavy Transportation (图论,最短路径) Description Background Hugo ...

  8. POJ 1797 Heavy Transportation(最大生成树/最短路变形)

    传送门 Heavy Transportation Time Limit: 3000MS   Memory Limit: 30000K Total Submissions: 31882   Accept ...

  9. Heavy Transportation(最短路 + dp)

    Heavy Transportation Time Limit:3000MS     Memory Limit:30000KB     64bit IO Format:%I64d & %I64 ...

  10. POJ 1797 Heavy Transportation (Dijkstra变形)

    F - Heavy Transportation Time Limit:3000MS     Memory Limit:30000KB     64bit IO Format:%I64d & ...

随机推荐

  1. 基于github+hexo搭建个人博客(window)

    0x01 环境搭建 1.Node.js环境 下载Node.js安装文件:https://nodejs.org/en/download/ 根据系统选择相应安装包下载,安装过程一路Next,默认设置即可. ...

  2. Nginx(十二)-- Nginx+keepalived实现高可用

    1.前提 两台Linux服务器,IP分别为192.168.80.128 和 192.168.80.129,都安装Nginx和keepalived,并启动. 2.配置双机热备 1.将192.168.80 ...

  3. Selenium 前进和后退

    我们平常使用浏览器时都有前进和后退功能, Selenium 也可以完成这个操作,它使用 back() 方法后退,使用 forward() 方法前进 from selenium import webdr ...

  4. Qt Creator build遇到error lnk1158 无法运行rc.exe

    解决办法: 将C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64 目录下的rc.exe 和rcdll.dll 复制到 C:\Prog ...

  5. mysql错误:got error 28 from storage engine

    今天碰到数据库出错 Got error 28 from storage engine 查了一下,数据库文件所在的盘应该没事,应该是数据库用的临时目录空间不够 引用 磁盘临时空间不够导致.解决办法:清空 ...

  6. vs2017编译网狐荣耀服务端的心得

    1.找不到d3dx9.h 从D:\Microsoft DirectX SDK (June 2010)\Include复制 d3dx9.hd3dx9anim.hd3dx9core.hd3dx9effec ...

  7. spring应用中多次读取http post方法中的流(附源码)

    一.问题简述 先说下为啥有这个需求,在基于spring的web应用中,一般会在controller层获取http方法body中的数据. 方式1: 比如http请求的content-type为appli ...

  8. rc.sysinit 解析

    $# :它可抓出 positional parameter 的數量,即脚本后面的参数有几个 $@和$*表示全部参数,但不包含脚本名,即$0,如果在command line上跑 my.sh p1 “p2 ...

  9. [SCOI2011]飞镖[数学模拟]

    2335: [SCOI2011]飞镖 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 482  Solved: 152[Submit][Status][ ...

  10. Egret 中实现3种状态切换按钮

    一.游戏中的常用3种状态按钮 Egret种提供了2种状态切换的按钮ToggleButton. 但是在游戏中常用到3种状态的按钮,比如任务系统的领取.已领取.未领取. 比如下图中宝箱的打开.浏览后打开. ...