今天做到一道最短路的题,原题https://loj.ac/problem/10081 题目大意为给一张有n个顶点的图,点与点之间有m1条道路,m2条航线,道路是双向的,且权值非负,而航线是单向的,权值可能为负,保证两点之间如果有航线就不会有道路。现给定起始点s,求s到每个点的最短路径,如果没有则输出 ...
分类:
编程语言 时间:
2018-08-17 12:50:04
阅读次数:
209
这个dp其实不是那么难,状态其实很好想,但是细节有少许偏差。 当时我并没有想到最短路要在dp之外写,后来看题解之后发现要预处理出来每段时间1~M的最短路,然后直接dp。 题目: 代码: ...
分类:
其他好文 时间:
2018-08-16 01:04:55
阅读次数:
172
说实话,我之前没有认真的spfa,现在后悔不以,特别是今天考了三题的图论,多要用到spfa,我肯定是懵逼地看题发呆;没有办法,知得晚上晚自习时写篇论文来回顾一下。 Bellman-ford大家应该都知道,其实spfa就在中国是这样叫的,在国外他们是叫“队列优化的Bellman-Ford算法”,管他的 ...
分类:
其他好文 时间:
2018-08-14 22:47:56
阅读次数:
252
关于最短路,大家应该都知道有Dijkstra,SPFA以及Floyd。 此处先提出一个问题: 给定图G,每条边有边权。求从一点到另一点的边权和最小的路径。要求图中不能有负回路(否则为NP问题)。 首先提到的便是Floyd。 如果数据范围足够小,相信大家大部分会选择Floyd(为什么呢,后文解释)。 ...
分类:
其他好文 时间:
2018-08-09 21:15:18
阅读次数:
154
农夫约翰在探索他的许多农场,发现了一些惊人的虫洞。虫洞是很奇特的,因为它是一个单向通道,可让你进入虫洞的前达到目的地!他的N(1≤N≤500)个农场被编号为1..N,之间有M(1≤M≤2500)条路径,W(1≤W≤200)个虫洞。FJ作为一个狂热的时间旅行的爱好者,他要做到以下几点:开始在一个区域, ...
分类:
其他好文 时间:
2018-08-09 01:16:06
阅读次数:
240
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1384 Intervals Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
分类:
其他好文 时间:
2018-08-08 22:05:30
阅读次数:
229
Free DIY Tour Problem Description Weiwei is a software engineer of ShiningSoft. He has just excellently fulfilled a software project with his fellow w ...
分类:
其他好文 时间:
2018-08-08 21:29:28
阅读次数:
166
Description 有一副n*m的地图,有n*m块地,每块是下列四种中的一种:墙:用#表示,墙有4个面,分别是前面,后面,左面,右面。起点:用C表示,为主角的起点,是一片空地。终点:用F表示,为主角的目的地,是一片空地。空地:用 . 表示。其中除了墙不能穿过,其他地方都能走。 主角有以下3种操作 ...
分类:
其他好文 时间:
2018-08-08 21:27:18
阅读次数:
185
最短路径算法简介 最短路径算法是在图中求两点(或多点)之间的最短路径,我们最常见的最短路径算法有四种:Bellman-ford、Dijkstra、SPFA、Floyd。 Bellman-ford算法可以用于有负边权的图,如果途图中有负环,算法也可以检验出来,时间复杂度为O(VE)。 Dijkstra ...
分类:
编程语言 时间:
2018-08-08 13:35:01
阅读次数:
152
题目实在太长,(当然大家会来到我这里肯定是看过题的)就不给出了,下面给出解题思路 这道题用spfa来写,具体参考黄哲威神犇; 这道题因为要得到一个最大的旅费,而这个旅费又要通过买卖水晶球来得到,所以我们肯定是要在水晶球价格低的时候买进,高的时候卖出,这个时候就需要走两遍spfa来得到买水晶球的花费和 ...
分类:
其他好文 时间:
2018-08-08 12:05:22
阅读次数:
139