POJ 2607
一次FLOYD,再枚举。
注意题目要求的输出是什么哦。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; const int inf=;
const int MAXN=;
int maze[MAXN][MAXN];
bool house[MAXN];
int dis[MAXN],fire,n; int main(){
int u,v,w;
while(scanf("%d%d",&fire,&n)!=EOF){
memset(house,false,sizeof(house));
for(int i=;i<MAXN;i++){
maze[i][i]=; dis[i]=inf;
for(int j=i+;j<MAXN;j++)
maze[i][j]=maze[j][i]=inf;
}
int station;
for(int i=;i<fire;i++){
scanf("%d",&station);
house[station]=true;
dis[station]=;
}
while(~scanf("%d%d%d",&u,&v,&w)){
maze[u][v]=maze[v][u]=min(w,maze[u][v]);
}
for(int k=;k<=n;k++){
for(int i=;i<=n;i++){
for(int j=;j<=n;j++){
if(maze[i][k]+maze[k][j]<maze[i][j]){
maze[i][j]=maze[i][k]+maze[k][j];
}
}
}
}
for(int i=;i<=n;i++){
for(int j=;j<=n;j++){
if(house[j])
dis[i]=min(dis[i],maze[i][j]);
}
}
// for(int i=1;i<=n;i++)
// cout<<dis[i]<<endl;
int tmp,ans,s=inf;
for(int i=;i<=n;i++){
tmp=;
for(int j=;j<=n;j++){
tmp=max(min(dis[j],maze[i][j]),tmp);
}
if(tmp<s){
s=tmp; ans=i;
}
}
printf("%d\n",ans);
}
return ;
}
POJ 2607的更多相关文章
- POJ 2607 Fire Station(Floyd打表+枚举更新最优)
题目链接: http://poj.org/problem?id=2607 Description A city is served by a number of fire stations. Some ...
- POJ 2607 Fire Station
Fire Station Time Limit: 5000ms Memory Limit: 65536KB This problem will be judged on PKU. Original I ...
- poj和hdu部分基础算法分类及难度排序
最近想从头开始刷点基础些的题,正好有个网站有关于各大oj的题目分类(http://www.pythontip.com/acm/problemCategory),所以写了点脚本把hdu和poj的一些题目 ...
- POJ 3370. Halloween treats 抽屉原理 / 鸽巢原理
Halloween treats Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 7644 Accepted: 2798 ...
- POJ 2356. Find a multiple 抽屉原理 / 鸽巢原理
Find a multiple Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7192 Accepted: 3138 ...
- POJ 2965. The Pilots Brothers' refrigerator 枚举or爆搜or分治
The Pilots Brothers' refrigerator Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 22286 ...
- POJ 1753. Flip Game 枚举or爆搜+位压缩,或者高斯消元法
Flip Game Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 37427 Accepted: 16288 Descr ...
- POJ 3254. Corn Fields 状态压缩DP (入门级)
Corn Fields Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 9806 Accepted: 5185 Descr ...
- POJ 2739. Sum of Consecutive Prime Numbers
Sum of Consecutive Prime Numbers Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20050 ...
随机推荐
- 学习XOR
//f(x;W,c,w,b)=w*max{0, W*x+c}+b #include <iostream>#include <vector>#include <algori ...
- selenium3 + python - xpath定位
什么是xpath呢? 官方介绍:XPath即为XML路径语言,它是一种用来确定XML1(标准通用标记语言3的子集)文档中某部分位置的语言.反正小编看这个介绍是云里雾里的,通俗一点讲就是通过元素的路径来 ...
- CALayer帧动画
CALayer帧动画 _sunLayer = [[CALayer alloc]init]; _sunLayer.contents = (id)[UIImage imageNamed:@"su ...
- BZOJ 2406 二分+有上下界的网络流判定
思路: 求出每行的和 sum_row 每列的和 sum_line 二分最后的答案mid S->i 流量[sum_row[i]-mid,sum_row[i]+mid] i->n+j ...
- Vue 区别
computed和methods区别 效果是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖发生改变时才会重新取值. 而methods,在重新渲染的时候,函数总会重新调用执行.
- C#之密封类(详解)
10.3 密封类与密封方法 如果所有的类都可以被继承,那么很容易导致继承的滥用,进而使类的层次结构体系变得十分复杂,这样使得开发人员对类的理解和使用变得十分困难,为了避免滥用继承,C#中提出了密封类 ...
- EasyUI 编写实体类树状选择器
<%@ page contentType="text/html;charset=UTF-8"%> <%@ include file="/WEB-INF/ ...
- 出现“ORA-28000:the account is locked”的解决办法
在Oracle 11g版本中,出于安全的考虑,所有Oracle的默认用户,包括SCOTT用户都被锁定.输入用户名和口令之后,会出现错误“ORA-28000:the account is locked” ...
- 【PostgreSQL-9.6.3】函数(1)--数值型函数
函数表示对输入参数返回一个特殊计算结果的值.PostgreSQL中的函数种类比较丰富,主要分为以下几类:数值型函数.字符型函数.日期和时间函数.条件判断函数.系统函数.加密函数以及其他函数.这篇文章只 ...
- 【PostgreSQL-9.6.3】约束
PostgreSQL中的约束有以下五种:主键约束.外键约束.非空约束.唯一性约束.默认约束.下面分别对这五种约束作说明. 一.主键约束(PrimaryKey Constraint) 主键约束要求主键列 ...