题目链接

这道题纯属是一个裸的SPFA;

建议先把模板AC之后再做。

只需要做一些手脚,就是在加边的时候加一个双向边就好。

然后再第一次加点的时候

看不懂模板的出门左转度娘。

推荐下面一片讲解:

友链

所以说,直接上代码。

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
#include<queue>
using namespace std;
struct data{
int v;int next;
int value;
}edge[];//临界链表存变
int cnt;
int alist[];
void add(int u,int v,int value)
{
edge[++cnt].v=v;
edge[cnt].value=value;
edge[cnt].next=alist[u];
alist[u]=cnt;
return ;
}//加边
queue<int> q;
bool ins[];
int d[];
void spfa(int x)//跑一边SPFA,原理在上面
{
d[x]=;
q.push(x);
ins[x]=true;
while(!q.empty())
{
int now=q.front();
q.pop();ins[now]=false;
int next=alist[now];
while(next)
{
int v=edge[next].v;
int value=edge[next].value;
if(d[v]>d[now]+value)
{
d[v]=d[now]+value;
if(!ins[v])
{
q.push(v);
ins[v]=true;
}
}
next=edge[next].next;
}
}
return ;
}
int m,n,s,e;
int main()
{
scanf("%d%d%d%d",&m,&n,&s,&e);//输入
for(int i=;i<=n;i++)
{
int u,v,value;
scanf("%d%d%d",&u,&v,&value);
add(u,v,value);//加边
add(v,u,value);//反向边
}
for(int i=;i<=m;i++)
d[i]=0x3f3f3f3f;//初始化
spfa(s);//跑SPFA
printf("%d",d[e]);//输出
return ;//程序拜拜
}

题解 P1339 【[USACO09OCT]热浪Heat Wave】的更多相关文章

  1. 洛谷—— P1339 [USACO09OCT]热浪Heat Wave

    P1339 [USACO09OCT]热浪Heat Wave 题目描述 The good folks in Texas are having a heatwave this summer. Their ...

  2. 洛谷P1339 [USACO09OCT]热浪Heat Wave 题解

    题目传送门 这道题实际非常简单好奇是怎么变黄的... 其实也就是一个SPFA,本人非常懒,不想打邻接表,直接用矩阵就好啦... #include<bits/stdc++.h> using ...

  3. [最短路]P1339 [USACO09OCT]热浪Heat Wave

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...

  4. P1339 [USACO09OCT]热浪Heat Wave

    我太lj了,所以趁着夜色刷了道最短路的水题....然后,,我炸了. 题目描述: The good folks in Texas are having a heatwave this summer. T ...

  5. luogu P1339 [USACO09OCT]热浪Heat Wave

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...

  6. 洛谷 P1339 [USACO09OCT]热浪Heat Wave (堆优化dijkstra)

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...

  7. 洛谷P1339 [USACO09OCT]热浪Heat Wave(最短路)

    题目描述 The good folks in Texas are having a heatwave this summer. Their Texas Longhorn cows make for g ...

  8. 洛谷 P1339 [USACO09OCT]热浪Heat Wave

    题目链接:https://www.luogu.org/problemnew/show/P1339 解题思路: 一道简单的最短路水题,dijkstra解法模板思路:https://www.cnblogs ...

  9. 洛谷 P1339 [USACO09OCT]热浪Heat Wave(dijkstra)

    题目链接 https://www.luogu.org/problemnew/show/P1339 最短路 解题思路 dijkstra直接过 注意: 双向边 memset ma数组要在读入之前 AC代码 ...

  10. P1339 [USACO09OCT]热浪Heat Wave(SPFA)

    -------------------------------------- 农夫约翰再显神威,双向热浪,双倍数组 (双倍大小,否则RE) ------------------------------ ...

随机推荐

  1. 分布式爬虫搭建系列 之二-----神器PyCharm的安装

    这里我们使用PyCharm作为开发工具,以下过程摘抄于:http://blog.csdn.net/qq_29883591/article/details/52664478  作者:陌上行走 Pytho ...

  2. 软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON

    全局变量 由于多个html页面,需要引用同一个变量.这个时候,需要定义一个全局变量!如何定义呢? 默认包含了mui的html文件都导入mui.js文件.那么将变量写在mui.js中,就可以实现所有页面 ...

  3. RabbitMQ操作方法

    /// <summary> /// 消费者(消息) /// </summary> public class CustmerMq { /// <summary> // ...

  4. asp.net js 存取cookie

    asp.net //传进来的 public BaseController(BaseHttpHandler handler, HttpContext context) // { //根据地址设置cook ...

  5. 使用axis2进行WebService的开发

    使用axis2进行WebService的开发 Apache Axis2 是 Apache Axis SOAP 项目的后继项目.此项目是 Web 服务核心引擎的重要改进,目标是成为 Web 服务和面向服 ...

  6. 【294】◀▶ Python 字符串说明

    目录: 一.Python访问字符串中的值 二. Python 转义字符 三.Python 字符串运算符 参考:Python 字符串 一.Python访问字符串中的值   Python不支持单字符类型, ...

  7. 关于js的keyCode

    原生js的event对象有三个键盘事件的值: 1) charCode: 被点击键的Unicode值 2) keyCode: 被点击键的ASCII十进制值 3) which: 字母数字键的charCod ...

  8. UDP数据报

    服务器端:Server 函数: 1.inet_addr()://把IP地址转换为长整型2.inet_ntoa();//将长整型转换为IP地址3.socket的阻塞和非阻塞: 阻塞模式下: 在程序中,“ ...

  9. [android] setOnTouchEvent 设置返回值为true 和 false的区别

    今天在做自定义的可选文本的 TextView 类时,用到了 View 类的 setOnTouchListener(OnTouchListener l)事件监听,在构造 OnTouchListener ...

  10. 252. Meeting Rooms 区间会议室

    [抄题]: Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],.. ...