Background

Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand

business. But he needs a clever man who tells him whether there really is a way from the place

his customer has build his giant steel crane to the place where it is needed on which all

streets can carry the weight.

Fortunately he already has a plan of the city with all streets and bridges and all the allowed

weights.Unfortunately he has no idea how to find the the maximum weight capacity in order

to tell his customer how heavy the crane may become. But you surely know.

Problem

You are given the plan of the city, described by the streets (with weight limits) between the

crossings, which are numbered from 1 to n. Your task is to find the maximum weight that can

be transported from crossing 1 (Hugo’s place) to crossing n (the customer’s place). You may

assume that there is at least one path. All streets can be travelled in both directions.

Input

The first line contains the number of scenarios (city plans). For each city the number n of

street crossings (1 <= n <= 1000) and number m of streets are given on the first line. The

following m lines contain triples of integers specifying start and end crossing of the street and

the maximum allowed weight, which is positive and not larger than 1000000. There will be at

most one street between each pair of crossings.

Output

The output for every scenario begins with a line containing “Scenario #i:”, where i is the

number of the scenario starting at 1. Then print a single line containing the maximum allowed

weight that Hugo can transport to the customer. Terminate the output for the scenario with a

blank line.

Sample Input

1

3 3

1 2 3

1 3 4

2 3 5

Sample Output

Scenario #1:

4

//注意题上最后让输出2个换行
//#include<map>
#include<queue>
#include<stack>
#include<vector>
#include<math.h>
#include<cstdio>
#include<sstream>
#include<numeric>//STL数值算法头文件
#include<stdlib.h>
#include<string.h>
#include<iostream>
#include<algorithm>
#include<functional>//模板类头文件
using namespace std; const int INF=1e9+7;
const int maxn=1100;
typedef long long ll; int t,n,m;
int vis[maxn];
int par[maxn];
int tu[maxn][maxn]; int dijkstra()
{
int i,j,k;
memset(vis,0,sizeof(vis));
for(i=1; i<=n; i++)
par[i]=tu[1][i];
for(i=1; i<=n; i++)
{
int minn=-1;
for(j=1; j<=n; j++)
{
if(!vis[j]&&minn<par[j])
{
k=j;
minn=par[j];
}
}
vis[k]=1;
for(j=1; j<=n; j++)
{
par[j]=max(par[j],min(tu[k][j],par[k]));
// if(!vis[j]&&par[j]<min(tu[k][j],par[k]))
// {
// par[j]=min(tu[k][j],par[k]);
// }
}
}
return par[n];
} int main()
{
int cot=1;
scanf("%d",&t);
while(t--)
{
int i,j,a,b,c;
scanf("%d %d",&n,&m);
memset(tu,0,sizeof(tu));
while(m--)
{
scanf("%d %d %d",&a,&b,&c);
tu[a][b]=tu[b][a]=c;
}
printf("Scenario #%d:\n",cot++);
printf("%d\n\n",dijkstra());
}
return 0;
}

Heavy Transportation(POJ - 1797 变形版 dijkstra)的更多相关文章

  1. Heavy Transportation POJ 1797 最短路变形

    Heavy Transportation POJ 1797 最短路变形 题意 原题链接 题意大体就是说在一个地图上,有n个城市,编号从1 2 3 ... n,m条路,每条路都有相应的承重能力,然后让你 ...

  2. POJ 1797 Heavy Transportation 最短路变形(dijkstra算法)

    题目:click here 题意: 有n个城市,m条道路,在每条道路上有一个承载量,现在要求从1到n城市最大承载量,而最大承载量就是从城市1到城市n所有通路上的最大承载量.分析: 其实这个求最大边可以 ...

  3. Heavy Transportation POJ - 1797

    题意 给你n个点,1为起点,n为终点,要求所有1到n所有路径中每条路径上最小值的最最值. 思路 不想打最短路 跑一边最大生成树,再扫一遍1到n的路径,取最小值即可,类似Frogger POJ - 22 ...

  4. kuangbin专题专题四 Heavy Transportation POJ - 1797

    题目链接:https://vjudge.net/problem/POJ-1797 思路:请参考我列出的另一个题目,和这个题目要求的值相反,另一个清楚后,这个写的解释就明白了. 另一个类似题目的博客:h ...

  5. POJ 1797 ——Heavy Transportation——————【最短路、Dijkstra、最短边最大化】

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

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

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

  7. poj 1797 Heavy Transportation(Dijkstar变形)

    http://poj.org/problem?id=1797 给定n个点,及m条边的最大负载,求顶点1到顶点n的最大载重量. 用Dijkstra算法解之,只是需要把“最短路”的定义稍微改变一下, A到 ...

  8. POJ1797 Heavy Transportation (堆优化的Dijkstra变形)

    Background Hugo Heavy is happy. After the breakdown of the Cargolifter project he can now expand bus ...

  9. POJ.1797 Heavy Transportation (Dijkstra变形)

    POJ.1797 Heavy Transportation (Dijkstra变形) 题意分析 给出n个点,m条边的城市网络,其中 x y d 代表由x到y(或由y到x)的公路所能承受的最大重量为d, ...

随机推荐

  1. redis.conf详细说明

    daemonize yes #---默认值no,该参数用于定制redis服务是否以守护模式运行.--- pidfile /var/run/redis.pid #默认值/var/run/redis.pi ...

  2. Jmeter-Java heap内存溢出

    使用jmeter进行压力测试时遇到一段时间后报内存溢出outfmenmory错误,导致jmeter卡死了,先尝试在jmeter.bat中增加了JVM_ARGS="-Xmx2048m -Xms ...

  3. 基于FPGA的HDTV视频图像灰度直方图统计算法设计

    随着HDTV的普及,以LCD-TV为主的高清数字电视逐渐进入蓬勃发展时期.与传统CRT电视不同的是,这些高清数字电视需要较复杂的视频处理电路来驱动,比如:模数转换(A/D Converter).去隔行 ...

  4. HihoCoder 重复旋律

    あの旋律を何度も繰り返しでも.あの日見た光景を再現できない 无论将那段旋律重复多少次,也无法重现那一日我们看到的景象 もし切ないならば.時をまきもどしてみるかい? 若是感到惆怅的话,要试着让时光倒流吗 ...

  5. 快速搭建 DNS 服务器: skydns + etcd

    参考: [ skynetservice github ] [ skydns 测试记录 CSDN ] etcd 安装配置 安装 yum install etcd 配置 sed -i 's@ETCD_LI ...

  6. Everything Has Changed(HDU6354+圆交+求周长)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6354 题目: 题意:用一堆圆来切割一个圆心为原点,半径为R的圆A,问切割完毕后圆A外围剩余部分的周长( ...

  7. 【HNOI】 lct tree-dp

    [题目描述]给定2-3颗树,每个边的边权为1,解决以下独立的问题. 现在通过连接若干遍使得图为连通图,并且Σdis(x,y)最大,x,y只算一次. 每个点为黑点或者白点,现在需要删除一些边,使得图中的 ...

  8. css优先级机制

    所谓CSS优先级,即是指CSS样式在浏览器中被解析的先后顺序.   1.important >(内联样式)Inline style  >(内部样式)Internal style sheet ...

  9. html中的meta标签

    1.定义 meta元素提供页面的原信息,位于文档头部 2.必须的属性 content属性 该属性提供名称/值对中的值,使用要与http-equiv或name属性一起使用 3.可选的属性 3.1.htt ...

  10. 记一次Powershell反混淆 (1)

    样本地址: https://www.virustotal.com/#/file/6f9034646e6fcead5342f708031412e3c2efdb4fb0f37bba43133a471d1c ...