hdu 2992 Hotel booking
http://acm.hdu.edu.cn/showproblem.php?pid=2992
#include <cstdio>
#include <cstring>
#include <map>
#include <vector>
#include <queue>
#define maxn 200
#include <algorithm>
using namespace std; const int inf=0x3fffffff; struct node
{
int v,cost;
};
int g[maxn][maxn],a[maxn],dis[];
int n,m,k;
map<int,int>q;
vector<node>v[];
bool vis[];
int que[]; void inti()
{
q.clear();
for(int i=; i<=n; i++)
{
v[i].clear();
}
for(int i=; i<=m+; i++)
{
for(int j=; j<=m+; j++)
{
g[i][j]=inf;
if(i==j) g[i][j]=;
}
}
} void spfa(int qr)
{
queue<int>qq;
memset(vis,false,sizeof(vis));
for(int i=; i<=n; i++) dis[i]=inf;
dis[qr]=;
qq.push(qr);
vis[qr]=true;
while(!qq.empty())
{
int x=qq.front();
qq.pop();
vis[x]=false;
for(int i=; i<(int)v[x].size(); i++)
{
int v2=v[x][i].v,cost=v[x][i].cost;
if(dis[v2]>dis[x]+cost)
{
dis[v2]=dis[x]+cost;
if(!vis[v2])
{
vis[v2]=true;
qq.push(v2);
}
}
}
}
for(int i=; i<=n; i++)
{
if(dis[i]<=&&q[i]!=)
{
g[q[qr]][q[i]]=;
}
} } void floyd()
{
for(int c=; c<=m+; c++)
{
for(int i=; i<=m+; i++)
{
for(int j=; j<=m+; j++)
{
g[i][j]=min(g[i][j],g[i][c]+g[c][j]);
}
}
}
}
int main()
{
while(scanf("%d",&n)!=EOF)
{
if(n==) break;
scanf("%d",&m);
inti();
for(int i=; i<=m; i++)
{
scanf("%d",&a[i]);
q[a[i]]=i;
}
a[]=;
q[]=;
a[m+]=n;
q[n]=m+;
scanf("%d",&k);
for(int i=; i<k; i++)
{
int u,v1,cost;
scanf("%d%d%d",&u,&v1,&cost);
node st;
st.v=v1;
st.cost=cost;
node st1;
st1.v=u;
st1.cost=cost;
v[u].push_back(st);
v[v1].push_back(st1);
}
for(int i=; i<=m; i++)
{
spfa(a[i]);
}
floyd();
if(g[][m+]==inf)
{
printf("-1\n");
}
else
printf("%d\n",g[][m+]-);
}
return ;
}
hdu 2992 Hotel booking的更多相关文章
- HDU 2992 Hotel booking(BFS+DFS 或者 SPFA+Floyd)
点我看题目 题意 : 一个司机要从1点到达n点,1点到n点中有一些点有宾馆,司机的最长开车时间不能超过10小时,所以要在10小时之内找到宾馆休息,但是为了尽快的走到n点,问最少可以经过几个宾馆. 思路 ...
- Hotel booking(spfa+floyd)
http://acm.hdu.edu.cn/showproblem.php?pid=2992 题意:有n个城市,编号为(1~n),有一些城市中有一些旅店,要求从一个城市到另一个城市不能超过10小时,问 ...
- HDU 2585 [Hotel]字符串递归处理
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2585 题目大意:马克思要找个曾经去过的很好的旅馆,可惜他记不完整旅馆的名字.他有已知的部分信息和可能的 ...
- HDU 2585 Hotel(字符串的模糊匹配+递归)
Problem Description Last year summer Max traveled to California for his vacation. He had a great tim ...
- 再说Play!framework http://hsfgo.iteye.com/blog/806974
这篇帖子的内容我本来想发到 http://www.iteye.com/topic/806660这里的主贴里去的,想挽回被隐藏的命运,但我写完本贴的内容,却发现为时已晚.好吧,我承认,上一个贴的标题容易 ...
- My strength (C-A-R)
My strength: I am good at problem resolving Challenge In the first year when I come to America I pas ...
- Go Revel - main函数分析
运行revel命令时,首先会编译整个项目,在编译时,会根据`app.conf`配置文件生成两个源码文件`tmp/main.go`.`routes/routes.go`,其中`main.go`是整个项目 ...
- spring中的事件 applicationevent 讲的确实不错
event,listener是observer模式一种体现,在spring 3.0.5中,已经可以使用annotation实现event和eventListner里. 我们以spring-webflo ...
- OO问题
设计一个在线的酒店预订系统,并且可以通过城市搜索出来 解决办法: Main Class: User Room Hotel Booking Adress Enums : 房间的状态和类型 public ...
随机推荐
- ubunt 基于deb 配置本地apt 源 分成仅本机使用,局域网使用2种
dpkg-scanpackages /software /dev/null | gzip>/software/Packages.gz
- 自定义UINavigationItem的两种方法以及相应的隐藏方法
第一种: UIImage *searchimage=[UIImage imageNamed:@"search.png"]; UIBarButtonItem *barbtn=[[[U ...
- mybatis使用时org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):的错误
最近在使用mybatis时,出现了 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): 这 ...
- VC —— 笔记汇总
导读 本文仅用于记录在个人在使用VC++过程中的遇到一些的问题和相关概念. 目录 开发环境 实践记录 MFC相关 windows编程相关 1.开发环境 1.Visual C++ 官方网站 主要内容:V ...
- Oracle 数据库 Database Express Edition 11g Release 2 (11.2) 错误解决集锦(安装方面)
前言:第一次接触数据库,想下载个oracle试玩下(虽然听说一般大企业才用),到 官网下载 了个简易版 XE 版本,安装时要注意记住自己输入的数据库密码(口令) 还有安装路径不能含有空格(Do no ...
- eXtremeDB
I am doing a cluster test, why did I encounter the ld errorwhen compiling the several packages from ...
- SpringMVC 之文件上传 MultipartResolver
基于前面文章的基础上. 一.准备 需要的jar 二.配置 1. spmvc-servlet.xml <?xml version="1.0" encoding=" ...
- Java中equals和“==””的区别,String特殊
public class TestString { /* * java中的数据类型,可分为两类: * 1.基本数据类型,也称为原始数据类型.byte,short,char,int,long,float ...
- 为什么要配置path环境变量?
一:关于path环境变量--为了在任意目录下,使用javac/java命令 第一种配置方法: 通过配置path环境变量,我们可以使某个程序,比如javac.exe,在任意目录下都可以运行,而不用跑到j ...
- Myeclipse中点(.)不出来方法或者属性?