随笔分类 -  Algorithm---Graph Theory

摘要:这道题目麻烦在输出的时候需要按照字典序输出,不过写了 Compare 函数还是比较简单的因为是裸的 Kruscal ,所以就直接上代码了~Source Code ://#pragma comment(linker, "/STACK:16777216") //for c++ Compiler#incl... 阅读全文
posted @ 2015-04-02 16:41 Jeremy Wu 阅读(176) 评论(0) 推荐(0) 编辑
摘要:参考了http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove 的模板对于每一种染色,都有一个等价群,例如旋转,翻转等。我们将每一种变换转换成一个置换群,通过置换群得到的都是等价的染色方案最终我们要求的是非等价的染色方案数。在Burn... 阅读全文
posted @ 2015-01-21 22:49 Jeremy Wu 阅读(300) 评论(0) 推荐(0) 编辑
摘要:具体参考http://blog.csdn.net/power721/article/details/6665750TODO//#pragma comment(linker, "/STACK:16777216") //for c++ Compiler#include #include #include... 阅读全文
posted @ 2015-01-19 23:00 Jeremy Wu 阅读(131) 评论(0) 推荐(0) 编辑
摘要:一个DLX模板阿/*1 0 0 1 0 0 11 0 0 1 0 0 00 0 0 1 1 0 10 0 1 0 1 1 00 1 1 0 0 1 10 1 0 0 0 0 12 4 61 0 0 1 0 0 00 0 1 0 1 1 00 1 0 0 0 0 1*/#include #includ... 阅读全文
posted @ 2014-11-20 15:14 Jeremy Wu 阅读(165) 评论(0) 推荐(0) 编辑
摘要:http://blog.csdn.net/sr_19930829/article/details/39756513http://www.kuangbin.net/archives/hdu4069-dlxhttp://acm.hdu.edu.cn/showproblem.php?pid=3909还是不... 阅读全文
posted @ 2014-11-20 14:20 Jeremy Wu 阅读(170) 评论(0) 推荐(0) 编辑
摘要:http://paste.ubuntu.com/8788669/ 阅读全文
posted @ 2014-11-02 21:05 Jeremy Wu 阅读(142) 评论(0) 推荐(0) 编辑
摘要:思路来源:http://blog.csdn.net/lenleaves/article/details/7873441求最小点权覆盖,同样求一个最小割,但是要求出割去了那些边,只要用最终的剩余网络进行一次遍历就可以了,比较简单。建图:同样是一个二分图,左边的点代表去掉出边,右边的点代表去掉入边(小心... 阅读全文
posted @ 2014-08-11 19:36 Jeremy Wu 阅读(188) 评论(0) 推荐(0) 编辑
摘要:套了个EK的模板//#pragma comment(linker, "/STACK:16777216") //for c++ Compiler#include #include #include #include #include #include #include #include #includ... 阅读全文
posted @ 2014-08-11 15:24 Jeremy Wu 阅读(180) 评论(0) 推荐(0) 编辑
摘要:用01分数规划 + prime + 二分 竟然2950MS惊险的过了QAQ前提是在TLE了好几次下过的 = =题目意思:有n个村庄,村庄在不同坐标和海拔,现在要对所有村庄供水,只要两个村庄之间有一条路即可,建造水管距离为坐标之间的欧几里德距离,费用为海拔之差,现在要求方案使得费用与距离的比值最小,很... 阅读全文
posted @ 2014-08-08 11:33 Jeremy Wu 阅读(509) 评论(0) 推荐(0) 编辑
摘要:vector 向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储。支持不指定vector大小的存储。STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacituy()函数返回的大小,当超过此分配的空间时再整体重新放分配一块内存存储,这给人以vector可以不指定vecto... 阅读全文
posted @ 2014-08-08 09:21 Jeremy Wu 阅读(273) 评论(0) 推荐(0) 编辑
摘要:第一道第K短路的题目 QAQ拿裸的DIJKSTRA + 不断扩展的A* 给2000MS过了题意:大意是 有N个station 要求从s点到t点 的第k短路 (不过我看题意说的好像是从t到s 可能是出题人写错了)从这题中还真的学到了很多1.第k短路的算法 A* 还有用边表实现dij(注:以下部份资料来... 阅读全文
posted @ 2014-08-05 18:48 Jeremy Wu 阅读(327) 评论(0) 推荐(0) 编辑
摘要:这题是今天下午BNU SUMMER TRAINING的C题是队友给的解题思路,用拓扑排序然后就可以了最后是3A其中两次RE竟然是因为:scanf("%d",mm);ORZ以后能用CIN还是CIN吧 QAQ贴代码了: 1 #include 2 #include 3 #include 4 #in... 阅读全文
posted @ 2014-08-04 20:45 Jeremy Wu 阅读(438) 评论(0) 推荐(0) 编辑
摘要:欧拉回路第一题TVT本题的一个小技巧在于:【建立一个存放点与边关系的邻接矩阵】1.先判断是否存在欧拉路径无向图:欧拉回路:连通 + 所有定点的度为偶数欧拉路径:连通 + 除源点和终点外都为偶数有向图:欧拉回路:连通 + 所有点的入度 == 出度欧拉路径:连通 + 源点 出度-入度=1 && 终点 入... 阅读全文
posted @ 2014-08-04 20:41 Jeremy Wu 阅读(334) 评论(0) 推荐(0) 编辑
摘要:题意就是求S点到T点的有向无环图中的最长路。用SPFA可以解决。一开始一直RE的原因 QAQ竟然是在开Edge 邻接表的时候开小了改了一下4Y#include #include #include #include #include #include #include #include #define... 阅读全文
posted @ 2014-08-04 14:11 Jeremy Wu 阅读(362) 评论(0) 推荐(0) 编辑
摘要:一开始不知道题意是啥意思,迟放进去反应和后放进去反应有什么区别对于第三组数据不是很懂,为啥312,132的组合是不行的后来发现这是一道考察并查集的题目 QAQ怒贴代码: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #in... 阅读全文
posted @ 2014-07-24 23:26 Jeremy Wu 阅读(179) 评论(0) 推荐(0) 编辑
摘要:思路来源:http://blog.csdn.net/niushuai666/article/details/6990421题目大意:初始时,有n个龙珠,编号从1到n,分别对应的放在编号从1到n的城市中。现在又2种操作:T A B,表示把A球所在城市全部的龙珠全部转移到B城市。(第一次时,因为A球所在... 阅读全文
posted @ 2014-05-06 11:00 Jeremy Wu 阅读(251) 评论(0) 推荐(0) 编辑
摘要:结题报告合集请戳:http://972169909-qq-com.iteye.com/blog/1185527 1 /*题意:求符合题意的最小集合的元素个数 2 题目要求的是求的最短路, 3 则对于 不等式 f(b)-f(a)>=c,建立 一条 b 到 a 的边 权值为 c,则求的最长路 即... 阅读全文
posted @ 2014-05-02 16:53 Jeremy Wu 阅读(201) 评论(0) 推荐(0) 编辑
摘要:解题思路:1.map简单应用2.Floyd算法的变形,之后判断dis[i][i],如果大于1,则存在利润! 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 mapname; ... 阅读全文
posted @ 2014-04-27 15:54 Jeremy Wu 阅读(191) 评论(0) 推荐(0) 编辑
摘要:1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int INF = 1000000; 8 const int MAXSIZE = 1005; 9 10 int map[MAXSIZE... 阅读全文
posted @ 2014-04-27 14:37 Jeremy Wu 阅读(177) 评论(0) 推荐(0) 编辑
摘要:贪心思想的Kruscal:先对边排序,再从第一条边开始,一旦start point 和 end poiont 连上,就break 1 #include 2 #include 3 #include 4 const int N = 1010; 5 const int inf = 1000000; ... 阅读全文
posted @ 2014-04-24 22:57 Jeremy Wu 阅读(148) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示