Loi_Cunese|CODEVS|1557|热浪
2016-11-15 20:59
387 查看
#include<iostream> #include<cstdio> #include<cstring> #include<queue> using namespace std; int t,C,S,e,tot=0; struct hh { int f,t,c; }a[12500]; int head[6500],jl[6500],ne[12500]; bool bo[6500]; queue<int>q; void build(int x,int y,int z) { tot++; a[tot].f=x; a[tot].t=y; a[tot].c=z; ne[tot]=head[x]; head[x]=tot; } void f() { while(!q.empty()) { int s=q.front(); q.pop(); bo[s]=0; for(int i=head[s];i!=-1;i=ne[i]) { int v=a[i].t; if(jl[v]>jl[s]+a[i].c) { jl[v]=jl[s]+a[i].c; if(bo[v]==0) { bo[v]=1; q.push(v); } } } } } int main() { memset(head,-1,sizeof(head)); memset(jl,0x3f,sizeof(jl)); memset(bo,0,sizeof(bo)); scanf("%d%d%d%d",&t,&C,&S,&e); int x,y,z; for(int i=1;i<=C;i++) { scanf("%d%d%d",&x,&y,&z); build(x,y,z); build(y,x,z); } q.push(S); bo[S]=1; jl[S]=0; f(); cout<<jl[e]; return 0; }
相关文章推荐
- 【codevs 1557】热浪的不同姿势
- 【codevs 1557】热浪(SPFA)
- 单源最短路问题 Codevs 1557 热浪(含讲解)
- AC日记——热浪 codevs 1557 (最短路模板题)
- 【codevs 1557】热浪
- 【codevs 1557】热浪(Dijkstra)
- 【codevs 1557】热浪的不同姿势
- codevs 1557 热浪(最短路【模板】)
- 最短路算法 codevs 1557 热浪
- codevs 1557 热浪 SPFA 最短路
- 【codevs1557】 热浪, Dijkstra算法入门
- 【CS 1557】热浪(Bellman_ford、Spfa、Spfa-slf三杀)
- [codevs1557]热浪
- codevs 1557 热浪
- Loi_Cunese|最小生成树Prim
- codevs 1557 热浪 SPFA 解题报告
- 【基础练习】【SPFA】codevs1557 热浪题解
- 最短路算法整理 1557 热浪
- 【图论】CODE[VS] 1557 热浪 (SPFA模板)
- codevs1557 热浪[SPFA模板]