SPFA + vector邻接表 居然TLE。 Time Limit: 8000MS
然后又是尝试一下 堆优化的Dijkstra + vector邻接表 果然还是TLE。
放弃vector,转为静态。
SPFA 1891MS
Dijkstra_heap 1938MS
突然发现以前做过这个题。搜一下自己的Blog SPFA + vector 7063MS 危险的过了……...
分类:
其他好文 时间:
2014-11-25 12:45:51
阅读次数:
194
题目大意:好长,如果不想看可以先看看修车那个题,基本一样。
思路:做过修车就好办了。这个题仅仅是数据范围变大了一坨。建图就不说了,主要是动态加边。倒过来做,因为一个厨师最后一个菜做的时间是不会影响到其他菜的时间的。而且每一个厨师确定了最后一个菜才能去想倒数第二个菜是什么。所以每跑一次SPFA,就回来看看是哪个厨师做的菜,然后在多加一个点限制一下流量,将这个点连向所有的菜。
CO...
分类:
其他好文 时间:
2014-11-25 10:53:08
阅读次数:
273
题目大意:给出一个地图,如果经过两个不同的区块,需要花费1,否则不需要花费。问从st到ed最小需要花费多少。
思路:签到题。
#include
#include
#include
#include
#include
#define MAX 510
#define MAXP 250010
#define MAXE 2000010
using namespace std;...
分类:
其他好文 时间:
2014-11-25 10:49:17
阅读次数:
165
AOE网上的关键路径
Time Limit: 1000MS Memory limit: 65536K
题目描述
一个无环的有向图称为无环图(Directed Acyclic Graph),简称DAG图。
AOE(Activity On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG。与AOV不同,活动都表示在了边上,如下图所示:...
分类:
其他好文 时间:
2014-11-25 09:20:29
阅读次数:
244
AOE网上的关键路径
Time Limit: 1000MS Memory limit: 65536K
题目描述
一个无环的有向图称为无环图(Directed
Acyclic Graph),简称DAG图。
AOE(Activity
On Edge)网:顾名思义,用边表示活动的网,当然它也是DAG。与AOV不同,活动都表示在了边上,...
分类:
其他好文 时间:
2014-11-22 23:12:33
阅读次数:
353
小vijos P1447 Updown背景开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道、一辆停在轨道底部的电梯、和电梯内一杆控制电梯升降的巨大手柄。faebdc 之塔一共有 N 层,升降梯在每层都有一个停靠点。手柄有 M 个控制槽,第 i个控制槽...
分类:
其他好文 时间:
2014-11-22 14:37:52
阅读次数:
252
若打了一只鼹鼠后,还能打另一只,我们可以在它们之间连权值为1的边。于是答案就是 以m为终点的最长路长度+1。建反图,就是单源最长路。MLE TLE 一时爽。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 ve...
分类:
其他好文 时间:
2014-11-22 10:38:15
阅读次数:
232
题目大意:给出一个城市各个道路的双向流量,城市的左上角的高度是0,城市的右下角的高度是1,若人流升高海拔就会消耗体力,问最小需要消耗多少体力。
思路:这道题才是真正的让我见识到了algorithm中的heap的强大。
分析这道题可以发现,一定会有一条分界线,这个分界线左边高度都为0,右边高度都是1,然后找到这条分界点就可以了。明显的最小割。但是数据量巨大,直接跑最大流会T,又是平面图,...
分类:
其他好文 时间:
2014-11-20 17:10:52
阅读次数:
237
题目大意:给定一个值E 求起点到终点的最多条路径 使长度之和不超过E
k短路的A*算法……每个点有一个估价函数=g[x]+h[x] 其中g[x]是从源点出发已经走了的长度 h[x]是从这个点到汇点的最短路
首先先在反图上跑一遍SPFA求出每个点的h[x],然后将源点的g[x]+h[x]加入堆 每次取出堆顶时将堆顶的g[x]向所连接的边扩展 第k次取出汇点即是答案
其中有一个剪枝就是当第k+1...
分类:
其他好文 时间:
2014-11-20 13:44:55
阅读次数:
209
题目大意:给出一张无向图,给出一个数值m,求出从1到N的前k短路的长度和>=数值m。
思路:注意!不能使用priority_queue,否则你会死的很惨。。为了解惑,我去找了当年SD省选的原题,分明空间是256M,为什么BZOJ和BASHUOJ上都是64M??卡pq有意思么???
思路很简单,就是按顺序求出这张图的前k短路,然后当m减成负数的时候就返回。
CODE:
#...
分类:
其他好文 时间:
2014-11-20 12:06:32
阅读次数:
210