状压整张图包括每个点的炸弹有没有被拿,墙壁有没有被炸,随意剪枝。用优先队列存一下状态。还有就是注意浮点数溢出的问题。#include #include #include #include #include #include #include #include #include #include #i...
分类:
其他好文 时间:
2014-08-27 17:55:18
阅读次数:
184
A:
这道题目还是很简单的,做过很多遍了,类似于切割木板的问题。
把所有的数放在一个优先队列里,弹出两个最大的,然后合并,把结果放进去。依次进行。
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define LL __int64
#define IN...
分类:
其他好文 时间:
2014-08-27 13:05:07
阅读次数:
222
二叉查找树是一种树数据结构,它与普通的二叉树最大的不同就是二叉查找树满足一个性质:对于树中的任意一个节点,均有其左子树中的所有节点的关键字值都不大于该节点的关键字值,其右子树中的任意一个节点的关键字值都不小于该节点的关键字值。在二叉查找树上可以进行搜索、取最小值、取最大值、取指定节点的前驱、取指定节点的后继以及插入和删除节点操作,因此二叉查找树和堆(大顶堆和小顶堆)一样,也可以做优先队列,都能够在 O(lgn) 的时间内取得集合的最大值和最小值。一个二叉查找树的期望高度为O(lgn),因此在二叉查找树上的基...
分类:
其他好文 时间:
2014-08-27 01:40:47
阅读次数:
273
对于堆大家都不陌生,无非就是最大堆和最小堆之分,堆的使用很广泛,优先队列、求大叔组的前k个数都可以用堆实现,且时间复杂度低。但是对于堆的具体实现存在几种不同的方式,它们各有优势。根据堆底层的实现可分为顺序存储堆和链式存储堆,链式存储又分为左式堆、斜堆以及二项..
分类:
其他好文 时间:
2014-08-25 17:18:25
阅读次数:
248
http://acm.hdu.edu.cn/showproblem.php?pid=1285
因为输入数据一定有解,并且要编号小的队伍在前,那么用优先队列存储结果集即可。
//拓扑排序关键在于需要维护一个入度为0的顶点的集合。(只出不入)
#include
#include
#include
#include
#define Max 510
using namespace std;
struc...
分类:
其他好文 时间:
2014-08-25 13:29:14
阅读次数:
188
这道题感觉挺吃力的,还用到了我不熟悉的优先队列题目中的推导也都看明白了,总之以后还要多体会才是先把代码贴上: 1 //#define LOCAL 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int max...
分类:
其他好文 时间:
2014-08-24 23:32:43
阅读次数:
288
题目链接:uva 501 - Black Box
题目大意:有一个集合,给定元素进入集合的顺序,现在有Q次查询,给定每次查询在第几个元素进入集合后,对于每i次查询,输出集合中第i小的数。
解题思路:用两个优先队列维护,队列a优先出值大的,队列b优先出值小的,在第i次询问前,保证a队列中有i-1个元素元素,并且抱枕都比b中的小,然后每次询问输出b队列的首元素,并且将它放到a队列中。
#...
分类:
其他好文 时间:
2014-08-24 00:22:51
阅读次数:
195
题目链接:uva 10588 - Queuing at the doctors
题目大意:公司安排职员去进行体检。一共有n个人,m个项目,给定每个职员到达医院的时间,以及需要体检的项目和顺序,每个项目检查一人需要消耗单位时间。每个项目的医生优先体检先到的职员,对于同时到的职员优先处理职员编号小的。求最后一个员工离开医院的时间。
解题思路:对每一个项目开一个优先队列,然后遍历时间,每次对...
分类:
其他好文 时间:
2014-08-23 15:26:41
阅读次数:
205
题目链接:uva 1203 - Argus
题目大意:一个成为Argus的系统,支持一个Register命令
Register Q_num Period
该命令为一个祖册出发器,每Period产生一次Q_num的时间。要求模拟k个事件,如果多个事件同时发生,现处理Q_num小的。
解题思路:用优先队列维护即可,队列中按照时间小的优先,时间相同的比较Q_num,每次处...
分类:
其他好文 时间:
2014-08-23 14:01:30
阅读次数:
161
题意:给定迷宫,可以更改高度比,问如何使最短路等于输入数据。思路:由于是单调的,可以用二分答案,然后BFS验证。这里用优先队列,每次压入也要进行检查(dis大小)防止数据过多,A*也可以。好久不写图论,WA成狗#include #include #include #include #include ...
分类:
其他好文 时间:
2014-08-22 22:21:59
阅读次数:
343