
图论
文章平均质量分 82
AndRing
这个作者很懒,什么都没留下…
展开
-
【综合图论】PKU-2942-Knights of the Round Table
综合性很强的一道图论题,用到了补图,双连通分量,二分图等几个知识点,这里有某位大牛的神解题报告点击打开链接。题目#include#include#include#include#includeusing namespace std;#define N 1005vector vec[N],lin[N];stack sta;int n,step,cnt,ans,low[N原创 2012-03-29 19:58:03 · 492 阅读 · 0 评论 -
【双连通分量(tarjan)+树形dp】HDU-2242-考研路茫茫——空调教室
重拾tarjan第一题,不过这题还要用到树形dp……所以是一道很好的综合简单题……题目#include#include#include#includeusing namespace std;template T Max(T x,T y){return x>y?x:y;}template T Min(T x,T y){return x<y?x:y;}#define N 10原创 2012-03-13 18:23:21 · 2360 阅读 · 0 评论 -
【tarjan算法求割点】PKU-1523-SPF
其实题目的数据不够规范,因为它的点可能不连续,而且数据里面一定有根节点1,这个在题目里体现不了!题目#include#include#include#include#includeusing namespace std;#define N 1005vector vec[N];int step,low[N],dfn[N],blg[N];void add(int x,int原创 2012-03-30 13:23:10 · 849 阅读 · 0 评论 -
【tarjan求双连通分量】PKU-3177&3352
PKU上几乎一模一样的两道题,都是用tarjan来求双连通分量,唯一不同的就是3177会有重边的情况,而3352不会有,所以在加了判断重边之后的代码在两题提交都能过。题目:31773323大神题解:点击打开链接#include#include#include#includeusing namespace std;#define N 5005vector原创 2012-03-31 02:13:18 · 636 阅读 · 0 评论 -
【tarjan求割边】PKU-3694-Network
先给出一个图,然后一次增加一些边,问在每条边增加后桥的数目是多少……因为是刚刚接触有关割的知识不久,所以都是模范人家的代码的,而且网上都是最朴素的代码,加上自己的水,所以时限5000ms的题跑出了3000+ms,真是悲剧啊!题目#include#include#include#includeusing namespace std;#define N 100005vector原创 2012-03-31 00:27:05 · 840 阅读 · 0 评论 -
【Floyd求无向图的最小环】PKU-1734-Sightseeing trip
Floyd算法就是通过n次枚举中间点k来使i到j的距离松弛为最短,而本题就是在枚举k的时候找环,具体思路见代码!题目#include#include#includeusing namespace std;#define inf 999999#define N 105int n,len,ans,map[N][N],dis[N][N],post[N][N],path[N];v原创 2012-04-01 18:59:41 · 704 阅读 · 0 评论 -
【Floyd求最短路+快速幂】PKU-3613-Cow Relays
这题很好的综合了图论和数论的知识来解题,这种转化综合的思维我要好好地加强训练才行……其实这里明白到一点就可以很好地知道它们之间是怎么转化的,当map[i][j]表示i到j的最短路径,map[j][k]表示j到k的最短路径,且是经过n条路时,那么i到k的最短距离且经过2*n条路就一定是map[i][j]+map[j][k]了!题目#include#include#include原创 2012-04-01 00:15:26 · 588 阅读 · 0 评论 -
【Havel-Hakimi定理】PKU-1659-Frogs' Neighborhood
1,Havel-Hakimi定理主要用来判定一个给定的序列是否是可图的。2,首先介绍一下度序列:若把图 G 所有顶点的度数排成一个序列 S,则称 S 为图 G 的度序列。3,一个非负整数组成的有限序列如果是某个无向图的序列,则称该序列是可图的。4,判定过程:(1)对当前数列排序,使其呈递减,(2)从S【2】开始对其后S【1】个数字-1,(3)一直循环直到当前序列出现负数(即不是可图的情原创 2012-03-22 09:36:59 · 787 阅读 · 0 评论