题目链接:http://poj.org/problem?id=3159 题目大意:给n个人派糖果,给出m组数据,每组数据包含A,B,C三个数,意思是A的糖果数比B少的个数不多于C,即B的糖果数 - A的糖果数<=C 。 最后求n 比 1 最多多多少颗糖果。 解题思路:经典差分约束的题目,具体证明看这 ...
分类:
其他好文 时间:
2017-11-20 23:20:08
阅读次数:
194
手动邻接表,据说比vector快了超多,在这里存一份模板= =。 代码: ...
分类:
其他好文 时间:
2017-11-20 23:14:57
阅读次数:
134
http://poj.org/problem?id=1816 比较麻烦的trie。 首先你需要选择针对n还是m建立trie,这里我选择了针对n。 那么就需要面临卡空间的问题。 这里提供了一种链式前向星的方法能够当你不会指针trie的时候卡过空间。(做法看代码吧) 然后针对m进行在trie上的dfs即 ...
分类:
其他好文 时间:
2017-11-19 12:37:31
阅读次数:
232
推荐博客 https://i.cnblogs.com/EditPosts.aspx?opt=1 http://blog.csdn.net/mcdonnell_douglas/article/details/54379641 spfa 自行百度 说的很详细 spfa 有很多实现的方法 dfs 队列 栈 ...
分类:
编程语言 时间:
2017-11-10 21:51:36
阅读次数:
251
XYZZY Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5304 Accepted Submission(s): 1510 Problem ...
分类:
其他好文 时间:
2017-11-05 00:30:08
阅读次数:
239
备忘:要学前向星 过大的数据赋值的时候要加LL 割边割点强连通分量的寻找方式都是建立树,找返祖边,比较dfn[i](该点在树上的位置)和low[i](能访问到的最前位置). 复习的时候不要看书上的割点割边.... ...
分类:
其他好文 时间:
2017-11-04 18:11:31
阅读次数:
114
二叉只能保存两个孩子,但我们可以把两个孩子改成两个关系,也就是我们利用二叉来储存关系,一个是孩子,一个是兄弟。 ...
分类:
其他好文 时间:
2017-10-26 23:18:59
阅读次数:
348
首先认识一下什么是“前向星”:前向星是一个特殊的边集数组,通过将边集数组中的每条边按照起点排序(必要时起点相同的边再按终点排序),并记录下以某个点为起点的所有边在数组中的其实位置和存储长度,来构造前向星。链式向前星,是图的一种存储结构,采用数组模拟链表实现..
分类:
其他好文 时间:
2017-10-26 22:43:56
阅读次数:
299
题意:就任意两个点能否到达; 解题思路:首先将图简化,比如假设图里有一个环,那么,这环内两个点肯定是能相互到达的,那么就不用考虑这环内的点了,很简单就想到用tarjan算法将环缩成一个点,然后就是判断缩完点后的图内任意两点能否互相到达了,能互相到达一定是有路径连接所有点的,就通过拓扑排序了,如果同一 ...
分类:
编程语言 时间:
2017-10-25 00:55:58
阅读次数:
275
关于前向星 前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序, 并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了. 用len[i]来记录所有以i为起点的边在数组中的存储长度. 用head[i]记录以i为边集 ...
分类:
其他好文 时间:
2017-10-22 21:01:19
阅读次数:
261