图
文章平均质量分 78
冷月残星
这个作者很懒,什么都没留下…
展开
-
Floyd,传递闭包,并查集(电话圈,uva 247)
n个人(nn很小,建一个邻接矩阵,MAP[i][j]表示编号为i的人给编号为j的人打过电话。跑一遍Floyd求出传递闭包。最后用并查集去分组。紫书有另一个分组的方法,那就是新建一个图,同一电话圈内的人互连一条边,然后一次输出各个连通分量的所有人。附上代码#include#include#include#include#include#inc原创 2016-07-17 20:17:28 · 463 阅读 · 0 评论 -
最大流,欧拉回路(混合图的欧拉回路,uva 10735)
关于欧拉图http://blog.csdn.net/y990041769/article/details/9371591一些参考http://www.hardbird.net/uva-10735-euler-circuit%E6%B7%B7%E5%90%88%E5%9B%BE%E7%9A%84%E6%AC%A7%E6%8B%89%E5%9B%9E%E8%B7%AF/找的是欧拉回路而转载 2016-08-05 19:36:27 · 767 阅读 · 0 评论 -
强连通分量,Tarjan,缩点(Network of Schools,POJ 1236)
看了别人代码,但博客找不到了= =。就是跑一遍Tarjan,缩点,对新图分别求入度,出度为零的点的个数。答案一就是入度为零的点的个数,答案二就是两者的最大值。因为我们只要让每个出度为零的点都连到某个入度为零的点上,每个入度为零的点都有某个出度为零的点连他(不能乱连)就可以使整个图强连通。后来质疑解法的正确性,因为觉得可能整个图不连通。后来看别人说题目第一句话A numb原创 2016-10-21 20:45:15 · 361 阅读 · 0 评论 -
枚举,bfs(FZU 2150,Fire Game)
主要是通过这道题目思考了很多关于树,图的直径,中心等问题。以下内容跟本题解法弱相关。说到树的直径(树上最远点对),基本上就是最经典的树形dp了,但是紫书上还介绍了一种很不错的方法,两遍dfs。详见紫书p282。网上找的详解及证明:http://blog.sina.com.cn/s/blog_dbe928200101cm5t.html我觉得图应该也是一样的道理原创 2017-05-05 20:19:41 · 360 阅读 · 0 评论 -
树上记忆化搜索(Crazy Bobo,HDU 5325)
树形DP,就是在树上进行动态规划,这要求树是一个有向无环图。对于大部分题目而言,要么给你一棵有向树(又称有根树)(同时也是一个有向无环图),要么给你一棵无向树,你可以根据需要转化成有向树(又称有根树)(同时也是一个有向无环图)来处理。具体处理方式就是一遍,两遍,甚至多遍dfs。本题的话,我们可以用有方向的树来建模,虽然这棵树是一个有向无环图,但它不是一棵有向树(有根树),所以常规的dfs方法没原创 2017-06-09 14:14:44 · 395 阅读 · 0 评论