【图论-最短路变形】想越狱的小杉

Time Limit:1000MS  Memory Limit:65536K

Description

背景 Background
这次小杉来到了经典美剧《越狱》的场景里……
他被抓起来了(-.-干嘛幻想这么郁闷的场景……)。
小杉身为新一代的Scofield,在挖了半个月之后终于挖通牢房里的地道。
在地道里,无数的管道路线困惑了他。

(若对情节有任何疑问,请观看原剧)

描述 Description
小杉看了看自己的纹身,明白了整个管道网是由N个小房间和若干小房间之间的单向的管道组成的。
小房间编号为不超过N的正整数。
每个管道都有一个人品限制值,小杉只能在人品不超过该限制值时通过。
小杉一开始在房间1,现在小杉想知道,每个小房间他最多能够以人品多少的状态到达。
注意,小杉的人品在出发以后是不会改变的。

Input

每组测试数据的
第一行有一个正整数N(1<=N<=2000)。
接下来若干行描述管道,每行三个正整数A,B,R(1<=A,B<=N, 1<=R<1e5, A<>B),表示A房间有一条到达B房间的人品限制值为R的管道(注意从B房间不可由此管道到达A房间,即管道是单向的,每组A,B至多只出现一次)。
整个输入数据以一行0 0 0结束。
特别地,对于30%的数据,有N<=100

Output

N-1行
为到达2~n个房间时的最大人品

Sample Input

4
1 2 30
1 3 20
2 3 25
3 4 30
2 4 20
0 0 0

Sample Output

30
25
25

Hint

对于样例数据:
小杉最多能够在人品为30的情况下到达小房间2(1->2)
小杉最多能够在人品为25的情况下到达小房间3(1->2->3)
小杉最多能够在人品为25的情况下到达小房间4(1->2->3->4)

dijkstra算法+堆

#include <cstdio>
#include <queue>
#include <map>
#include <algorithm>
#define INF 100000000
using namespace std;
typedef pair<int,int> P;//first为值,second为顶点编号
vector<P> G[2000+1];//邻接表,first为顶点编号,second为值
int V,d[2000+1];//d初始化为0
void dijkstra(int s)
{
 priority_queue<P> que;//堆维护lowcost
 d[s]=INF;//注意要初始化为INF
 que.push(P(INF,s));
 while(!que.empty())
 {
  P p=que.top();que.pop();
  int u=p.second;
  if(p.first<d[u])continue;
  for(int i=0;i<G[u].size();i++)
  {
   int v=G[u][i].first;
      if(min(d[u],G[u][i].second)>d[v])//如果min(d[u],G[u][i].second)>d[v]则更新
      {
         d[v]=min(d[u],G[u][i].second);
         que.push(P(d[v],v));
      }
  }
 }
}
int main()
{
 scanf("%d",&V);
 int u,v,cost;
 while(scanf("%d%d%d",&u,&v,&cost)&&u&&v&&cost)
     G[u].push_back(P(v,cost));
 dijkstra(1);
 for(int i=2;i<=V;i++)
     printf("%d\n",d[i]);
 return 0;
}

【图论-最短路变形】想越狱的小杉相关推荐

  1. |Vijos|图论最短路|P1391 想越狱的小杉

    http://vijos.org/p/1391 SPFA,感觉不是真正意义上的SPFA.. #include<cstdio> #include<cstring> #includ ...

  2. 【vijos】【spfa最短路】想越狱的小杉

    描述 小杉看了看自己的纹身,明白了整个管道网是由N个小房间和若干小房间之间的单向的管道组成的. 小房间编号为不超过N的正整数. 对于某个管道,小杉只能在人品不超过一定程度时通过. 小杉一开始在房间1, ...

  3. 【vijos】【图论】【最短路径】【SPFA】想越狱的小杉

          From lolanv 想越狱的小杉               背景 Background     这次小杉来到了经典美剧<越狱>的场景里--  他被抓起来了(-.-干嘛幻想 ...

  4. Vijos 1391 想越狱的小杉

    Vijos 1391 想越狱的小杉 题目位置 https://vijos.org/p/1391 题目描述 小杉看了看自己的纹身,明白了整个管道网是由N个小房间和若干小房间之间的单向的管道组成的. 小房 ...

  5. [vijos P1391] 想越狱的小杉

    考前最后一题,竟然是第一次码SPFA,虽然这个算法早有耳闻,甚至在闻所未闻之前自己有过一个类似的想法,说白了就是广搜啊,但是敲起来还是第一次啊,而且这还不是真正意义上的SPFA. 完全按照自己想法来码 ...

  6. Vijos P1391 想越狱的小杉

    Vijos P1391 想越狱的小杉 题目 背景 这次小杉来到了经典美剧<越狱>的场景里-- 他被抓起来了(-.-干嘛幻想这么郁闷的场景--). 小杉身为新一代的Scofield,在挖了半 ...

  7. Vijos - 想越狱的小杉(最短路)

    题目链接:https://vijos.org/p/1391 背景 这次小杉来到了经典美剧<越狱>的场景里-- 他被抓起来了(-.-干嘛幻想这么郁闷的场景--). 小杉身为新一代的Scofi ...

  8. 8.17 想越狱的小杉 1535

    题目 题解 代码 题目 背景 Background 这次小杉来到了经典美剧<越狱>的场景里-- 他被抓起来了(-.-干嘛幻想这么郁闷的场景--). 小杉身为新一代的Scofield,在挖了 ...

  9. #104-[SPFA]想越狱的小杉

    Description 这次小杉来到了经典美剧<越狱>的场景里-- 他被抓起来了(-.-干嘛幻想这么郁闷的场景--). 小杉身为新一代的Scofield,在挖了半个月之后终于挖通牢房里的地 ...

最新文章

  1. 华为计算黄之鹏:AI开源框架已经到“汽车替代马车”的阶段 | MEET2021
  2. 百度关闭新闻源背后的13个趋势风口
  3. C++虚函数与多态性
  4. 周江华:网易云信IM推送保障及网络优化实践
  5. JAVA遇见HTML——JSP篇(JSP状态管理)
  6. Tomcat 配置 login 和 gas
  7. spring boot配置虚拟路径(替代docBase配置)访问本地图片
  8. vs code没有代码提示
  9. TR069 ACS模拟器测试脚本
  10. linux磁盘挂载特别慢,arch开机速度竟然是挂载磁盘拖慢了。。
  11. NFR24C0L中文使用手册、stm32硬件SPI与模拟SPI比较:
  12. 20180514-A · Star Wars Survey · ggplot2 ggdraw geom_bar facet_grid magick 柱状图 条形图 · R 语言数据可视化 案例 源码
  13. 项管专栏丨项目管理的利器 — WBS工作分解结构
  14. java数组降序排列_java数组排序sort升序,java数组排序sort降序
  15. 初学必看 C陷阱与缺陷(第二版)读书笔记
  16. 纤亿通带您了解生活小妙招--构建家庭网络指南
  17. 【WLAN从入门到精通-基础篇】第1期——WLAN定义和基本架构
  18. 如何用ping 命令简单测试网速
  19. ST-Link该如何升级?
  20. 使用system备份ubuntu生成iso镜像

热门文章

  1. 不能说的秘密结局分析
  2. 怎么用计算机ping组播地址,Windows 10如何ping计算机名之mDNS
  3. 【ODX介绍】-4.1-UDS诊断$10服务在ODX-D诊断描述文件中如何描述
  4. 百度IP定位和百度地图API定位
  5. 大学计算机软件编程,计算机程序设计VC++-中国大学mooc-题库零氪
  6. 【语义分割系列:七】Attention Unet 论文阅读翻译笔记 医学图像 python实现
  7. dig命令使用大全(linux上域名查询)
  8. 【单片机毕业设计】【mcuclub-jj-029】基于单片机的婴儿床的设计
  9. spark任务调度——梳理龙骨
  10. selenium grid环境配置