- 博客(6)
- 问答 (7)
- 收藏
- 关注
原创 hdu 2768 Cat vs. Dog (最大独立集)
/* 题意:有v个观众,每个人投给自己喜欢的猫(或者狗)和讨厌的狗(或者猫),如果出现喜欢的和别人讨厌的相同,则其中一人会不满意。现要求得是最大满意的观众是多少。 方法:根据出现矛盾的两个观众序号建边。现在选择最多的顶点,要求各个顶点之间没有线相连,即不出现矛盾。就是求最大独立集。 最大匹配:二分图G中,找出边数最大的子图M,使得M中各条边均无公共顶点,则M为最大匹配。
2015-05-13 21:01:24 442
原创 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 541
原创 hdu Proving Equivalences (强连通缩点)
/*给你一个有向网络图,问,至少加多少条边能使这个图成强连通思路:可以用tarjan算法求出求出有向图的强连通分量,并进行染色,然后在缩点,缩点的好处就是把原本杂乱的有向图变成有向无环图。。。然后统计入度为0的点和出度为0的点,取其较大值就是所求的要求添加的最少的边的条数了。*/# include # include # include # include #include
2015-05-09 16:00:24 401
原创 hdu Exploration (并查集 拓扑 强连通)
首先对于所有的无向边,我们使用并查集将两边的点并起来若一条边未合并之前,两端的点已经处于同一个集合了,那么说明必定存在可行的环(因为这两个点处于同一个并查集集合中,那么它们之间至少存在一条路径)如果上一步没有判断出环,那么仅靠无向边是找不到环的考虑到,处于同一个并查集集合中的点之间必定存在一条路径互达,因此将一个集合的点合并之后,原问题等价于在新生成的有向图中是否有环我们知道,有向无环图必
2015-05-07 20:36:49 410
转载 树的直径 (树上的最长路)
树的直径(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 913
原创 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 400
空空如也
ffmpeg怎么抽帧取流
2021-05-31
QT连接远程Mysql 库不匹配
2020-10-10
socket上传视频文件,服务端生成的文件不能播放
2020-08-28
数据库查询语句,具体见图片
2017-08-13
如何知道.gz压缩包里源文件的名字
2017-03-26
1.txt压缩成2.txt.gz 解压出来怎么保持原有的文件名 非命令
2017-03-22
c++怎么解压文件 tar.zip gz格式等
2016-12-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人