Czy

A stupid bird...

POJ 3694 Network(割边+LCA)

<br />//Tarjan求桥 + LCA //蛋疼题目,确实想不到用LCA这个如此巧妙的方法,主要也就写下求桥,对Tarjan的DFN,LOW值再加深下理解 //重点是对桥的记录,本来想通过用边来记录,后来发现这是无解的,用桥与点对应就可以了 //一开始还想实践下LRJ书里面...

2011-05-05 21:14:00

阅读数 2548

评论数 0

Sicily 1140 国王的遗产(搜索|图论)

<br />//搜索,暴力 //这题卡了我几天,检查到最后,居然是我的minID维护错误!我艹!这种错误居然卡了我几天!!!我就是一个超级无敌大水人! //不过卡了这几天也好,程序也经过不断优化 //做法是预处理出以每个结点为根的子树有多少个结点cnt,以每个结点为根的子树最小编...

2011-03-23 16:40:00

阅读数 4674

评论数 2

POJ 2594 Treasure Exploration(传递闭包+最小路径覆盖)

//传递闭包的建立(Floyd) + 最小路径覆盖 //这题有别于1422,原因在于它是一个有向图,而非DAG,机器人可以绕一圈回来在走其他路 //the roads of two different robots may contain some same point. //例如1->...

2010-08-18 09:35:00

阅读数 1339

评论数 1

POJ 3216 Repairing Company(Floyd + 二分图最大匹配)

//Floyd + 二分图最大匹配 //将任务抽象为点,如果任务i完成后还能够赶上任务j的开始时间,则在i-->j连上一条边 //题意是要求分配最少的维修工完成维修工作,那么最坏情况就是每个任务分配一个,共M个 //但是有时多个任务能够由一个维修工完成,如果任务i和任务j之间有边相连,...

2010-08-18 08:23:00

阅读数 1263

评论数 0

POJ 2135 Farm Tour(最小费用流)

//最小费用流 //构图关键是添加超级源点,超级汇点 //题意是要找一条可以再终点往返的路,这2条路距离之和最短且每条路只能经过一次 //第一步将问题转化为找2条从起点到终点 //第二步与费用流挂钩,将距离当做费用,将容量设置为1是为了保证每条路只经过一次 //超级源点和起点的容量为2,...

2010-08-17 01:34:00

阅读数 710

评论数 0

ZOJ 3362 Beer Problem(最小费用流)

//最裸的最小费用流 #include #include using namespace std; const int MAXN = 105; const int MAXM = 8100; const int INF = 1000000000; int mincost,maxflow...

2010-08-17 01:27:00

阅读数 748

评论数 0

POJ 2516 Minimum Cost(二分图最小权匹配——KM算法)

//最小权匹配(KM算法) //构图是关键,又是拆点这个思想。因为商品数量很少,最多才3,所以将一个商品拆成3个点 //一开始我将K种商品全部拆出来,想一次KM解决,结果构出来的图最坏情况是50*50*3 和50*50*3 的二部图来匹配最优权值 //在经过O(n^3)的KM + 多组数据,...

2010-08-15 02:26:00

阅读数 2151

评论数 2

POJ 2455 Secret Milking Machine(二分答案+最大流)

感谢怀哥提供的经典好题,让我学会了二分答案这个思想!//二分答案+最大流 //终于见识到传说中的二分答案这个方法了 //如果没有二分答案这个提示,这道题我怎么也不会往最大流去想 //思路是这样的,将所有边权值排序,记录边权值的上界和下界 //接着开始二分答案,依照枚举的这个答案构图,即将边...

2010-08-15 02:16:00

阅读数 1448

评论数 1

POJ 2195 Going Home(KM算法——二分图最小权匹配)

//最小权匹配(KM算法) #include #include #include using namespace std; const int MAX = 105; const int INF = 2147483647; char G[MAX][MAX]; int lx[MAX],...

2010-08-13 18:11:00

阅读数 752

评论数 0

POJ 2263 Heavy Cargo(图的遍历)

//图的遍历 //CITY记录到当前城市的的最大运载量 //状态转移方程,city[y] = max(city[y],min(r[x->y],city[x]); #include #include #include #include using namespace std; ...

2010-08-06 02:46:00

阅读数 846

评论数 0

POJ 2513 Colored Sticks(Trie+并查集+欧拉回路)

//TRIE + 并查集 + 欧拉回路 //A了这道题,学会了用并查集判断无向图的连通性 #include #include #include using namespace std; const int MAX = 500003; int N; int fa[MAX]; int...

2010-08-03 23:29:00

阅读数 663

评论数 0

POJ 2075 Tangled in Cables(最小生成树)

//最小生成树Kruscal #include #include #include #include #include #define eps 1e-8//精度处理 using namespace std; int n,m; struct Edge { int u,v; ...

2010-08-01 23:17:00

阅读数 918

评论数 0

Sicily 1210 二叉树(树的遍历)

//树的遍历 //几个结论 //1:前序遍历第一个元素是根,后序遍历最后一个元素是根 //2:前序遍历第二个元素是某子树的根,但左右不确定 //3:在后序遍历中找到前序遍历的第二个元素,那么以这个元素为基准,可以划分新的左右子树 //4:当前序遍历的第二个元素出现在后序遍历的倒数第二位,...

2010-07-31 19:55:00

阅读数 2017

评论数 1

Sicily 1823 Hardest Job Ever!(单源最短路)

//单源最短路径 //Dijkstra + 优先队列实现 #include #include #include #define INF 1200000000 #define MAXN 205 #define MAXM 20005 using namespace std; type...

2010-07-27 22:54:00

阅读数 1132

评论数 0

Sicily 1196 Conflict(传递闭包的建立)

//传递闭包 //看了郭老的书才懂得传递闭包的建立 //T为传递闭包数组 //在6中运算关系中,可以简化为b ---> b=b ---> b a= a 或 b > a)那么就产生冲突 //三、对不等号的的关系另外判断,在NE(not equal)数组中...

2010-07-27 20:55:00

阅读数 1018

评论数 0

POJ 1386 Play on Words(判断欧拉回路存在)

//求欧拉回路,注意欧拉图的性质 //构图的思想是以单词的首字母和末字母作为结点构图,将单词作为一条有向边 //(A)----acm------>(M)-----malform---->(M)------mouse----->(E) //1、第一步是要先对图的连通性进行判断...

2010-07-27 19:48:00

阅读数 905

评论数 0

POJ 2421 Constructing Roads(最小生成树)

//最小生成树 //只需将已经建成的路的边权值置零即可 //然后对边进行排序,建立并查集,用Kruscal #include #include #include #define MAX 105 using namespace std; int N,Q; int G[MAX][MA...

2010-07-26 23:41:00

阅读数 578

评论数 0

POJ 3159 Candies(差分约束系统)

//差分约束系统 //建立关系十分简单,SPFA求到终点的距离 //但这一题十分奇怪,用队列就TLE,用栈就不会,真奇怪~ #include #include #define MAXN 30005 #define MAXM 150000 #define INF 1000000000 ...

2010-07-26 19:35:00

阅读数 634

评论数 0

POJ 3259 Wormholes(判断负权回路|SPFA||Bellman-Ford)

//判断是否存在负权回路SPFA算法 #include #include #define MAXN 505 #define MAXM 6000 #define INF 1000000000 using namespace std; int F,N,M,WW,m,u,v,w; int...

2010-07-26 19:24:00

阅读数 1246

评论数 0

POJ 1364 King(差分约束系统)

//差分约束系统 //题意相当晦涩,看了好半天才大概知道个什么 //对题目中给定的si,ni,ki,和一个给定的序列S[1....N] //如果(si,ni,gt,ki),意思就是存在约束条件S[si]+S[si+1]+...S[si+ni] > ki //如果(si,ni,lt,k...

2010-07-26 17:48:00

阅读数 2766

评论数 2

提示
确定要删除当前文章?
取消 删除
关闭
关闭