3402: [Usaco2009 Open]Hide and Seek 捉迷藏
3402: [Usaco2009 Open]Hide and Seek 捉迷藏
Time Limit: 3 Sec  Memory Limit: 128 MB
Submit: 78  Solved: 64
[Submit][Status]
Description
Input
Output
仅一行,输出三个整数.第1个表示安全牛棚(如果有多个,输出编号最小的);第2个表示牛棚1和安全牛棚的距离;第3个表示有多少个安全的牛棚.
Sample Input
3 6
4 3
3 2
1 3
1 2
2 4
5 2
Sample Output
HINT
Source
题解:不用多说,明显的单源最短路,但是出现了一个很神奇的小插曲——一开始用dijkstra写,结果TLE得很惨;于是换成spfa,然后192ms就AC了?!?!
于是,本人打算就此展开下一次实验研究,同时将可能考虑引入用堆优化的dijkstra,以及在进行全源最短路时引入Floyd算法进行对比,敬请期待
/**************************************************************
Problem:
User: HansBug
Language: Pascal
Result: Accepted
Time: ms
Memory: kb
****************************************************************/ type
point=^node;
node=record
g,w:longint;
next:point;
end;
var
i,j,k,l,m,n,f,r:longint;
a:array[..] of point;
b,c,d:array[..] of longint;
p:point;
procedure add(x,y,z:longint);
var p:point;
begin
new(p);p^.g:=y;p^.w:=z;
p^.next:=a[x];a[x]:=p;
end;
function min(x,y:longint):longint;
begin
if x<y then min:=x else min:=y;
end;
begin
readln(n,m);
for i:= to n do a[i]:=nil;
for i:= to m do
begin
readln(j,k);
add(j,k,);add(k,j,);
end;
f:=;r:=;
fillchar(c,sizeof(c),);
b[]:=;c[]:=; while f<r do
begin
p:=a[b[f]];
while p<>nil do
begin
if (c[p^.g]=) or (c[p^.g]>(c[b[f]]+p^.w)) then
begin
b[r]:=p^.g;
c[p^.g]:=c[b[f]]+p^.w;
inc(r);
end;
p:=p^.next;
end;
inc(f);
end;
j:=;k:=;l:=;
for i:= to n do
if c[i]>j then
begin
j:=c[i];
k:=;
l:=i;
end
else if c[i]=j then inc(k);
writeln(l,' ',j-,' ',k);
end.
3402: [Usaco2009 Open]Hide and Seek 捉迷藏的更多相关文章
- BZOJ 3402: [Usaco2009 Open]Hide and Seek 捉迷藏
		题目 3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec Memory Limit: 128 MB Description 贝 ... 
- 【BZOJ】3402: [Usaco2009 Open]Hide and Seek 捉迷藏(spfa)
		http://www.lydsy.com/JudgeOnline/problem.php?id=3402 又是spfa水题.. #include <cstdio> #include < ... 
- BZOJ—— 3402: [Usaco2009 Open]Hide and Seek 捉迷藏
		http://www.lydsy.com/JudgeOnline/problem.php?id=3402 Description 贝茜在和约翰玩一个“捉迷藏”的游戏. 她正要找出所有适 ... 
- BZOJ 3402: [Usaco2009 Open]Hide and Seek 捉迷藏(最短路)
		这个= =一看就是最短路了= = PS:最近有点懒 = = 刚才看到一道平衡树的裸题还嫌懒不去写= =算了等刷完这堆水题再去理= = CODE: #include<cstdio>#incl ... 
- BZOJ3402: [Usaco2009 Open]Hide and Seek 捉迷藏
		3402: [Usaco2009 Open]Hide and Seek 捉迷藏 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 51 Solved: 4 ... 
- B3402 [Usaco2009 Open]Hide and Seek 捉迷藏 最短路
		直接最短路板子,dij堆优化. 题干: 题目描述 贝茜在和约翰玩一个“捉迷藏”的游戏. 她正要找出所有适合她躲藏的安全牛棚.一共有N(≤N≤)个牛棚,被编为1到N号.她知道约翰(捉牛者)从牛棚1出发. ... 
- 洛谷 P2951 [USACO09OPEN]捉迷藏Hide and Seek
		题目戳 题目描述 Bessie is playing hide and seek (a game in which a number of players hide and a single play ... 
- Luogu 2951 捉迷藏Hide and Seek
		P2951 [USACO09OPEN]捉迷藏Hide and Seek 题目描述 Bessie is playing hide and seek (a game in which a number o ... 
- 【BZOJ-1941】Hide and Seek      KD-Tree
		1941: [Sdoi2010]Hide and Seek Time Limit: 16 Sec Memory Limit: 162 MBSubmit: 830 Solved: 455[Submi ... 
随机推荐
- Linux中的zero-copy技术
			本文是对参考文章重要部分的摘录,同时进行简单地总结. 零拷贝技术的相关背景知识 传统的 Linux 操作系统的标准 I/O 接口是基于数据拷贝操作的,即 I/O 操作会导致数据在操作系统内核地址空间的 ... 
- node源码详解(二 )—— 运行机制 、整体流程
			本作品采用知识共享署名 4.0 国际许可协议进行许可.转载保留声明头部与原文链接https://luzeshu.com/blog/nodesource2 本博客同步在https://cnodejs.o ... 
- 基于.NET Core的Hypertext Application Language(HAL)开发库
			HAL,全称为Hypertext Application Language,它是一种简单的数据格式,它能以一种简单.统一的形式,在API中引入超链接特性,使得API的可发现性(discoverable ... 
- Jmeter生成html格式测试报告
			使用jmeter进行性能测试,运行完毕后生成html格式的测试报告,需要进行如下操作: 1.在C:\apache-jmeter-3.0\bin文件夹下的user.properties文本中添加如下信息 ... 
- PHP面向对象编程简单实例
			<?php date_default_timezone_set("PRC"); /** 1.静态属性用于保存类的公有数据* 2.静态方法里面只能访问静态属性* 3.静态成员 ... 
- [python]什么是生成器
			看理论硬是看的抓狂,然后去百度贴吧看到了一句话,什么叫python生成器,简直秒懂 
- C/C++中慎用宏(#define)
			宏的定义在程序中是非常有用的,但是使用不当,就会给自身造成很大的困扰.通常这种困扰为:宏使用在计算方面. 本例子主要是在宏的计算方面,很多时候,大家都知道定义一个计算的宏,对于编译和编程是多么的有用. ... 
- [Netty] - Netty入门(最简单的Netty客户端/服务器程序)
			Java中的NIO是一种解决阻塞式IO问题的基本技术,但是NIO的编写对java程序员是有比较高的要求的.那么Netty就是一种简化操作的一个成熟的网络IO编程框架.这里简单介绍一个程序,代码是< ... 
- Loadrunner 在controller中运行socket脚本时报错:Abnormal termination, caused by mdrv process termination 的原因和解决方法
			原因: 网上给出的可能的原因大致有两个: 1. 压力负载机器的资源不足(CPU,内存) 2. 分配内存和释放内存的语句不匹配. 并给出了一些解决方案,最开始我以为是加了IP地址的原因,不断尝试增加 ... 
- Dockerfile详解
			Dockerfile详解 利用Dockerfile文件,可以构建docker的image镜像 命令使用 通过-f参数指定Dockerfile路径,进行构建image docker build -f / ... 
