题目链接:http://poj.org/problem?id=1797

题意:n个城镇,m条路上能承载的最大重量。现在问你从1到n的最大承重量。

题解:spfa的变体。

假设当前1->当前点的承载量是d[v] 比 从1->k的承载量d[now] 小 或者 是比当前的承载量e[now][i].second小,就更新。

然后注意一下初始化的时候d[]的大小。具体的看代码吧。QWQ板子好用。

代码:

 #include<iostream>
#include<stack>
#include<vector>
#include<queue>
#include<algorithm>
using namespace std;
const int maxn = 2e5+; vector< pair<int,int> > e[maxn]; int n,m;
int d[maxn],inq[maxn]; void init(){
for(int i = ; i < maxn; i++)
e[i].clear();
for(int i = ;i < maxn ; i++)
inq[i] = ;
for(int i = ; i < maxn ; i++)
d[i] = ;
} int main() {
int T;
cin>>T;
int cas = ;
while(T--){
cin>>n>>m;
init();
int x,y,z;
for(int i = ; i < m ;i++){
cin>>x>>y>>z;
e[x].push_back(make_pair(y,z));
e[y].push_back(make_pair(x,z));
}
int s,t;
//cin>>s>>t;
s = ;
t = n;
queue<int>Q;
Q.push(s);
d[s] = 1e9 ; //比小的话就初始化最大。
inq[s] = ;
while( !Q.empty() ){
int now = Q.front();
Q.pop();
inq[now] = ;
for(int i = ; i < e[now].size() ; i++){
int v = e[now][i].first;
//改。
if(d[v] < min( d[now] , e[now][i].second)){
d[v] = min(d[now] , e[now][i].second);
if(!inq[v]){
inq[v] = ;
Q.push(v);
continue;
}
}
} }
printf("Scenario #%d:\n",cas++);
cout<<d[t]<<endl;
cout<<endl;
}
return ;
}

【POJ】1797 Heavy Transportation的更多相关文章

  1. POJ 1797 Heavy Transportation

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

  2. poj 1797 Heavy Transportation(最大生成树)

    poj 1797 Heavy Transportation Description Background Hugo Heavy is happy. After the breakdown of the ...

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

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

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

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

  5. POJ 1797 Heavy Transportation SPFA变形

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

  6. 【POJ】1704 Georgia and Bob(Staircase Nim)

    Description Georgia and Bob decide to play a self-invented game. They draw a row of grids on paper, ...

  7. 【POJ】1067 取石子游戏(博弈论)

    Description 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后 ...

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

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

  9. POJ 1797 Heavy Transportation (Dijkstra变形)

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

随机推荐

  1. 如何加大jvm的内存和tomcat的内存

    如何扩大jvm的内存和tomcat的内存,如何让项目没有用的值得到及时的回收和清理,java项目 最佳答案   修改 tomcat 的内存方式:修改 catalina.bat在set JAVA_OPT ...

  2. Navicat 连接MongoDB 查询语句

    https://www.cnblogs.com/viviman/archive/2012/11/21/2780562.html

  3. 1.3 React 组件

    1.3.1 React 组件介绍 在 React 中组件是第一元素,是 React 的基础,一个 React 应用就是基于 React 组件的组合而成.前面的 JSX 练习过后,大家应该对 React ...

  4. ICPC Asia Nanning 2017 L. Twice Equation (规律 高精度运算)

    题目链接:Twice Equation 比赛链接:ICPC Asia Nanning 2017 Description For given \(L\), find the smallest \(n\) ...

  5. babel/core 6.x升级到7.x要碰到的一些坑

    刚学习react.js没多久,碰到各种坑.就比如这个问题,弄了我3个小时,终于解决了.其实就是一个小问题. 报错信息: Error: Cannot find module '@babel/core' ...

  6. [已解决]Series object has no attribute explode

    报错代码 s = pd.Series([[1, 2, 3], 'foo', [], [3, 4]]) s 0 [1, 2, 3] 1 foo 2 [] 3 [3, 4] dtype: object s ...

  7. hadoop系列(二)分布式文件系统HDFS

    根据core-site.xml的配置,接下来就可以通过:hdfs://localhost:9000来对hdfs进行操作了. 1.创建输入目录 C:\WINDOWS\system32>hadoop ...

  8. S1#Python之shebang

    点1 - Python之shebang 一. shebang 在计算机科学中,Shebang是一个由井号和叹号构成的字符串行,其出现在文本文件的第一行的前两个字符. 在文件中存在Shebang的情况下 ...

  9. Dijkstra算法举例分析

    题目如下: 如上图,设A为源点,求A到其他各顶点(B.C.D.E.F)的最短路径.线上所标注为相邻线段之间的距离,即权值.(注:此图为随意所画,其相邻顶点间的距离与图中的目视长度不能一 一对等). 解 ...

  10. vue实现京东动态楼层效果

    页面效果如下 <template> <div> <h1>首页</h1> <section class="floor-nav" ...