4019 想越狱的小明

时间限制: 1 s

空间限制: 1000 KB

题目等级 : 钻石 Diamond

题目描述 Description

这次小明来到了经典美剧《越狱》的场景里……

它被抓起来了(-.-干嘛幻想这么郁闷的场景……)。

小明身为新一代的Scofield,在挖了半个月之后终于挖通牢房里的地道。

在地道里,无数的管道路线困惑了它。(若对情节有任何疑问,请观看原剧)

小明看了看自己的纹身,明白了整个管道网是由N个小房间和若干小房间之间的单向的管道组成的。

小房间编号为不超过N的正整数。

对于某个管道,小明只能在人品不超过一定程度时通过。

小明一开始在房间1,现在小明想知道,每个小房间他最多能够以人品多少的状态到达。

注意,小明的人品在出发以后是不会改变的。

输入描述 Input Description

每组测试数据的第一行有一个正整数N(1<=N<=2000)。

接下来若干行描述管道,每行三个正整数A,B,R(1<=A,B<=N),表示A房间有一条到达B房间的管道,且小明的人品不超过R时可以通过(注意从B房间不可由此管道到达A房间,

即管道是单向的)

整个输入数据以一行0 0 0结束

特别地,对于30%的数据,有N<=100

表示A房间有一条到达B房间的管道,且小明的人品不超过R时可以通过(注意从B房间不可由此管道到达A房间,

输出描述 Output Description

对每组测试数据输出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

数据范围及提示 Data Size & Hint

1s

小明最多能够在人品为30的情况下到达小房间2(1->2)

小明最多能够在人品为25的情况下到达小房间3(1->2->3)

小明最多能够在人品为25的情况下到达小房间4(1->2->3->4);

/*
Name: Codevs 4019
Copyright: yes.
Author: nancheng58
Date: 15-10-16 15:28
Description:
询问边权路径最大路径的最小值.
这题不用最大树+lca直接spfa暴力就好了.
dis[i]表示到i点的最大值.
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#define MAXN 2001
using namespace std;
int head[MAXN],dis[MAXN],n,m,cut;
struct data{int v,next,x;}e[MAXN*MAXN];
bool b[MAXN];
queue<int>q;
void add(int u,int v,int z)
{
e[++cut].v=v;
e[cut].x=z;
e[cut].next=head[u];
head[u]=cut;
}
int read()
{
int x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;if(ch==EOF) return -1;ch=getchar();}
while(ch>='0'&&ch<='9') x=x*10+ch-48,ch=getchar();
return x*f;
}
void spfa()
{
memset(dis,0,sizeof dis);
dis[1]=1e9;
q.push(1);
while(!q.empty())
{
int u=q.front();q.pop();b[u]=false;
for(int i=head[u];i;i=e[i].next)
{
int v=e[i].v;
if(dis[v]<min(dis[u],e[i].x)) {
dis[v]=min(dis[u],e[i].x);
if(!b[v]) b[v]=true,q.push(v);
}
}
}
}
int main()
{
int x,y,z;
while((n=read())!=-1)
{
while(true)
{
x=read(),y=read(),z=read();
if(!x&&!y&&!z) break;
add(x,y,z);
}
spfa();
for(int i=2;i<=n;i++) printf("%d\n",dis[i]);
cut=0;memset(head,0,sizeof head);
}
return 0;
}

Codevs 4019 想越狱的小明的更多相关文章

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

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

  2. codevs 2277 爱吃皮蛋的小明(水题日常)

    时间限制: 1 s  空间限制: 32000 KB  题目等级 : 白银 Silver 题目描述 Description 小明特别爱吃蛋,特别是皮蛋.他一次可以吃一个蛋或者两个蛋(整个吞下去),而且他 ...

  3. 小明的密码-初级DP解法

    #include #include #include using namespace std; int visited[5][20][9009];// 访问情况 int dp[5][20][9009] ...

  4. 小明系列问题――小明序列(LIS)

    小明系列问题――小明序列 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit ...

  5. ACM 擅长排列的小明

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想 ...

  6. ACM 懒省事的小明

    懒省事的小明 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述       小明很想吃果子,正好果园果子熟了.在果园里,小明已经将所有的果子打了下来,而且按果子的不同种 ...

  7. 管闲事的小明-nyoj51

    描述某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米.我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置:数轴上的每个整数点,即0,1,2,……,L,都种有一棵 ...

  8. nyist 240 小明的调查统计(二)

    http://acm.nyist.net/JudgeOnline/problem.php?pid=240 小明的调查统计(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 ...

  9. ACM题目————STL练习之 懒省事的小明(优先队列)

    描述 小明很想吃果子,正好果园果子熟了.在果园里,小明已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆.小明决定把所有的果子合成一堆. 因为小明比较懒,为了省力气,小明开始想点子了: 每一 ...

随机推荐

  1. 从入门到自闭之Python--Redis

    什么是Redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库.Redis全称为:Remote Dictionary Server ...

  2. centos 秘钥登录

    客户端系统:macOS 服务端系统:Centos7 另外:ip 为 172.25.11.182 用户名为 iamfine 1, 在客户端macOS上生成 rsa 对 ssh-keygen -t rsa ...

  3. [js]$.ajax标准写法

    $.ajax({     url:"http://www.microsoft.com",    //请求的url地址     dataType:"json",  ...

  4. [js]EasyUI导出数据表格(Export DataGrid)

    包括 'datagrid-export.js' 文件 <script type="text/javascript" src="datagrid-export.js& ...

  5. 实现a标签按钮完全禁用

    前言 最近在开发时遇见一个问题 我们知道a标签的disabled属性部分浏览器支持,但是尽管设置了disabled属性也无法阻挡任何鼠标经过或是点击事件的,那么如何实现a标签按钮的禁用呢? 转换一下思 ...

  6. vuex中的this.$store.commit

    Vue的项目中,如果项目简单, 父子组件之间的数据传递可以使用 props 或者 $emit 等方式 进行传递 但是如果是大中型项目中,很多时候都需要在不相关的平行组件之间传递数据,并且很多数据需要多 ...

  7. 判断一个数是否为回文数(js)

    //判断是否为回文数:若n=1234321,则称n为一回文数 let readline = require("readline-sync"); let newNum = 0; co ...

  8. Windows defender怎么才能彻底关闭?

    据不久前的一项测试表明,Windows系统自带的Windows defender软件在所有参与测试的杀毒安全软件中对win10的运行速度影响最大. 而Win10系统的Windows defender会 ...

  9. 最终章·MySQL从入门到高可用架构报错解决

    1. 报错原因:MySQL的socket文件目录不存在. 解决方法:创建MySQL的socket文件目录 mkdir /application/mysql-5.6.38/tmp 2. 报错原因:soc ...

  10. 2.Java NIO 简介

    概述 Java NIO 是 JDK 1.4 发布的一套全新的IO API(New IO 简称 NIO),由于 JDK 1.7 对 NIO 的更新,目前 NIO 被广泛应用,以至于 将 JDK 1.7 ...