自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苍竹林

何不让这一场梦 没有醒来的时候

  • 博客(6)
  • 问答 (7)
  • 收藏
  • 关注

原创 hdu 2768 Cat vs. Dog (最大独立集)

/* 题意:有v个观众,每个人投给自己喜欢的猫(或者狗)和讨厌的狗(或者猫),如果出现喜欢的和别人讨厌的相同,则其中一人会不满意。现要求得是最大满意的观众是多少。 方法:根据出现矛盾的两个观众序号建边。现在选择最多的顶点,要求各个顶点之间没有线相连,即不出现矛盾。就是求最大独立集。 最大匹配:二分图G中,找出边数最大的子图M,使得M中各条边均无公共顶点,则M为最大匹配。

2015-05-13 21:01:24 436

原创 poj 1419 Graph Coloring (最大独立集 dfs)

/// 一个无向图中,使用黑白两种颜色对顶点着色,要求相邻顶点不能同时为黑色,求最大能染黑色顶点数量以及对应顶点。#include#include#include#includeusing namespace std;vectorg[110];int n;int vis[110];int num[110];int maxx;void dfs(int x,int cot){

2015-05-13 19:55:47 510

原创 hdu Proving Equivalences (强连通缩点)

/*给你一个有向网络图,问,至少加多少条边能使这个图成强连通思路:可以用tarjan算法求出求出有向图的强连通分量,并进行染色,然后在缩点,缩点的好处就是把原本杂乱的有向图变成有向无环图。。。然后统计入度为0的点和出度为0的点,取其较大值就是所求的要求添加的最少的边的条数了。*/# include # include # include # include #include

2015-05-09 16:00:24 383

原创 hdu Exploration (并查集 拓扑 强连通)

首先对于所有的无向边,我们使用并查集将两边的点并起来若一条边未合并之前,两端的点已经处于同一个集合了,那么说明必定存在可行的环(因为这两个点处于同一个并查集集合中,那么它们之间至少存在一条路径)如果上一步没有判断出环,那么仅靠无向边是找不到环的考虑到,处于同一个并查集集合中的点之间必定存在一条路径互达,因此将一个集合的点合并之后,原问题等价于在新生成的有向图中是否有环我们知道,有向无环图必

2015-05-07 20:36:49 381

转载 树的直径 (树上的最长路)

树的直径(Diameter)是指树上的最长简单路。直径的求法:两遍BFS (or DFS)任选一点u为起点,对树进行BFS遍历,找出离u最远的点v以v为起点,再进行BFS遍历,找出离v最远的点w。则v到w的路径长度即为树的直径*简单证明于是原问题可以在O(E)时间内求出关键在于证明第一次遍历的正确性,也就是对于任意点u,距离它最远的点v一定是最长路的一端。如果u在最

2015-05-02 09:25:52 873

原创 hdu1269 迷宫城堡 (强连通模板)(有向图)

///题意当强连通分量为1的时候输出Yes否者输出No。 两两可达# include# include# include# include# includeusing namespace std;# define MAXN 10005 ///题目中可能的最大点数# define MAXM 100005 ///边数struct Edge{ int v,next;} ed

2015-05-01 20:59:55 388

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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