_Never_

I walk slowly,but I will never stop.

导航

随笔分类 -  图论

1 2 下一页

记录图论的一些算法……
POJ 3013 Big Christmas Tree
摘要:又题意转化为最短路,SPFA,各种注意,不然WA 阅读全文

posted @ 2012-05-04 20:21 _Never_ 阅读(629) 评论(0) 推荐(0)

POJ 2226 Muddy Fields
摘要:最小覆盖点数 阅读全文

posted @ 2012-04-21 13:06 _Never_ 阅读(299) 评论(0) 推荐(0)

POJ 2139 Six Degrees of Cowvin Bacon
摘要:在宿舍,玩了好一段时间呀……这都20天都没发表随笔了!这尼玛霸气!果断!!今晚不想做的去看了一道题,题意读了半天,但是题很简单!竟然很顺利的AC!思路:裸死的floydView Code #include <stdio.h>#include <memory.h>#define N 302#define MAXVAL 30000int map[N][N];void floyd(int n){ int i,j,k; for(k=1;k<n;k++) for(i=1;i<n;i++) for(j=1;j<n;j++) if... 阅读全文

posted @ 2012-04-18 22:01 _Never_ 阅读(337) 评论(0) 推荐(0)

POJ 2516 Minimum Cost
摘要:最小费用最大流 阅读全文

posted @ 2012-03-31 11:39 _Never_ 阅读(308) 评论(0) 推荐(0)

POJ 2135 Farm Tour
摘要:最小费用最大流 阅读全文

posted @ 2012-03-31 11:27 _Never_ 阅读(414) 评论(0) 推荐(0)

POJ 3308 Paratroopers
摘要:二分图的最小点权覆盖集 阅读全文

posted @ 2012-03-24 12:10 _Never_ 阅读(431) 评论(1) 推荐(0)

POJ 2125 Destroy The Graph
摘要:二分图的最小点权覆盖集 阅读全文

posted @ 2012-03-21 18:25 _Never_ 阅读(272) 评论(0) 推荐(0)

POJ 2075 Tangled in Cables
摘要:Hash+最小生成树 阅读全文

posted @ 2012-03-19 22:04 _Never_ 阅读(378) 评论(0) 推荐(0)

POJ 1949 Chores
摘要:拓扑排序 阅读全文

posted @ 2012-03-19 22:00 _Never_ 阅读(186) 评论(0) 推荐(0)

POJ 2112 Optimal Milking
摘要:二分+最短路+最大流(二分匹配) 阅读全文

posted @ 2012-03-19 18:28 _Never_ 阅读(627) 评论(0) 推荐(0)

POJ 1797 Heavy Transportation
摘要:最短路 阅读全文

posted @ 2012-03-13 17:17 _Never_ 阅读(282) 评论(0) 推荐(0)

POJ 1789 Truck History
摘要:最小生成树 阅读全文

posted @ 2012-03-13 09:27 _Never_ 阅读(235) 评论(0) 推荐(0)

POJ 1112 Team them up
摘要:求反图+DFS求连通分量并染色+DP 阅读全文

posted @ 2012-03-01 11:10 _Never_ 阅读(1301) 评论(2) 推荐(0)

POJ 1502 MPI Maelstrom
摘要:..................................................................先无语,必须无语!!!!应该说是一个很简单的题:赤裸的Dijsktra!但是题意读不懂,用着有道+1个小时+坚强的意志=终于读懂了!。。。。。。。English。。。。。。。。。。然后速想代码架构,速敲代码!!但是测试数据就错了!!!!!最终调试!!发现定义最大值错了!!即#define MAX 0x7fffffff这样一来,在最大值的基础上再加上一个数就越界了,可能就是负数!以至于更新dist的值整成负的了!!!记住!这个错误,以后别犯了!!!View Code 阅读全文

posted @ 2011-10-29 23:26 _Never_ 阅读(261) 评论(0) 推荐(0)

POJ 1466 Girls and Boys
摘要:。。。。。。。。。。。啥也不想说,我只想骂出题人!!!能不能人性点!!!R尼玛,出题数据,那是随便随机的??你知道你浪费了多少人的时间??你知道你折磨了多少人的心神??经过被百般蹂躏,我知道了它的后台数据的某些一定是不对照的,比如2跟1有关系,1跟2关系并不一定给你写出了你题目很清楚的告诉读者:跟个人的有关系的人数!!你如果说1跟2搞,而2却不一定跟1搞,那总人数-匹配数/2也不对!尼玛的怎么让AC!!很明显必须是相互的!!尼玛你这样搞是会折寿的……算了,说点正事……这个是:求最大独立集最大独立集==N-最大匹配数(即最大覆盖点数)理解:除去有关系了,都是没关系的这个相对好理解一点,那俩关系哥 阅读全文

posted @ 2011-10-28 11:42 _Never_ 阅读(480) 评论(0) 推荐(0)

POJ 1325 Machine Schedule
摘要:这个题我想了一上午没都想的思路,刚开始按照自己的思维进行探索,结果一个小小的例子就被否定了!无奈之下还是去看了解题报告……原来它是一个:求最小覆盖点数。额,本来对这个概念并不是太熟悉,接触更多的是最大匹配~解题思想:本来这个题给人的情形是MachineA——Jobs——MachineB,根本想不到可以转换成MachineA——MachineB即转化为求最小覆盖点数,而最小覆盖点数==最大匹配数,即求最大匹配数即可!具体的说A——B,把边作为jobs,而任意一边都可以用A或者B的某一种模式完成,所以每一条边,都可以连着A_i,B_j(i,j表示模式i,j),则试着选取最少的A_i和B_j即选择最 阅读全文

posted @ 2011-10-27 15:36 _Never_ 阅读(208) 评论(0) 推荐(0)

POJ 1422 Air Raid
摘要:想了好几次,一直想不出来,没思路!今天看了解题报告,才知道是一个:最小路径覆盖数问题最小路径覆盖数=N-最大匹配数这个真还不知道!但是不知道为什???草了,这博客园这东西真傻比!!字体都调不过来!View Code #include <stdio.h>#include <string.h>#define M 7200#define N 122int nodev[N];int nodeu[M],next[M];void Build_Graph(int m){ int i,v,u,ind; memset(nodev,-1,sizeof(nodev)); ind=0; for 阅读全文

posted @ 2011-10-27 15:29 _Never_ 阅读(193) 评论(0) 推荐(0)

POJ 1273 Drainage Ditches
摘要:额,又做了一遍哈,不过有一段时间没学最大流了,就当是复习复习挺好!View Code #include <stdio.h>#include <string.h>#define N 202int map[N][N];int queue[N];int pre[N];int Edmonds_Karp(int start,int end,int n){ int i,cur,front,rear; int maxflow=0; while(true) { front=rear=0; queue[rear]=start; memset(pre,-1... 阅读全文

posted @ 2011-10-21 22:00 _Never_ 阅读(159) 评论(0) 推荐(0)

POJ 1251 Jungle Roads
摘要:简单,赤裸的最小生成树……不过,有一点小障碍的地方是数据的读取!!数据中有字符、数字掺杂这输入,整不好就读错!!开始我用getchar()光WA,无奈又写个Readint()就可以了!View Code #include <stdio.h>#include <stdlib.h>struct Edge{ int v,u; int val;}edge[200];int com(const void *a,const void *b){ return (*(Edge*)a).val-(*(Edge*)b).val;}int ancestor[27];void Sinit(in 阅读全文

posted @ 2011-10-21 21:54 _Never_ 阅读(167) 评论(0) 推荐(0)

POJ 1274 The Perfect Stall
摘要:一个很明显的最大二分匹配!尽管很明显,但我还是想了一会儿……为什么?因为我有点忘了它的实现,又想了一会儿,代码敲出来,测试样例数据时,出不来结果~调试说是栈溢出。。。我又分析了代码。。。确实有问题!缺少标记!!!最终又加了个no[N]数组,提交才AC!View Code #include <stdio.h>#include <string.h>#define M 40002#define N 202int nodev[N];int nodeu[M],next[M];int pre[N];bool no[N];void Build_Graph(int n,int m){ 阅读全文

posted @ 2011-10-21 21:39 _Never_ 阅读(197) 评论(0) 推荐(0)

1 2 下一页