![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
文章平均质量分 69
GooMaple
这个作者很懒,什么都没留下…
展开
-
UVa 10129 - Play on Words
先用并查集检查连通性,再用判断入度与出度关系判断其是否为欧拉回路,只有其即联通且每节点入度出度之和至多有两个为奇数(俩奇数点为起始点和结束点,且入度出度只差只能为1),其才为欧拉回路~~代码如下:#include#include#include#includeint p[30];int find(int x){ return p[x] == x ? x : find原创 2012-08-01 13:49:05 · 518 阅读 · 0 评论 -
UVa 10305 - Ordering Tasks
纯种的拓扑排序,参考刘汝佳《入门经典》上的代码稍加修改,完全可以AC ~代码如下:纯种的拓扑排序,参考刘汝佳《入门经典》上的代码稍加修改,完全可以AC ~代码如下:#include#include#include#include#define max 100+5int c[max],topo[max],t,n,G[max][max];int dfs(int u)原创 2012-08-01 13:53:06 · 2882 阅读 · 0 评论 -
UVa 10004 - Bicoloring
一个图的题,但也可以找规律来做。两种颜色图一个图,要求相邻两点颜色不能相同,显然,以三角形环为例往外推,只要是形成奇数多边形的环,就不可能实现相邻两点的颜色不同,因此只要以每个点为基准,找出所有形成的环,只要存在奇数环就说明不能被涂色,否则就可以~~~代码如下:#include#include#include#include#include#includeusing n原创 2012-07-31 10:01:44 · 491 阅读 · 0 评论 -
UVa 10054 - The Necklace
欧拉回路,先判断其连通性和每个节点的度数的奇偶性(本题中所有节点都应为偶数),如果是欧拉回路则DFS输出结果,注意:每个“珍珠”的两个数字是可以交换的,看第二组样例就会了解 ~代码如下:#include#include#include#includeint p[50+2];void dfs(int u,int ffio[52][52]) // dfs输出结果{ in原创 2012-08-01 13:51:05 · 1909 阅读 · 0 评论 -
UVa 10596 - Morning Walk
纯欧拉回路的题,连通性以及度数,注意 r==0 时特殊情况的处理(此时应该是Not Possible的) ~代码如下:#include#include#include#includeint p[200+5];int find(int x){ return p[x] == x ? x : find(p[x]);}int main(){#ifdef state原创 2012-08-01 13:52:31 · 653 阅读 · 0 评论 -
HDU 1269 - 迷宫城堡
有向图的强连通图分量,Tarjan算法,模板题。代码如下:#include#include#include#include#include#include#includeusing namespace std;const int Maxn = 10002;const int MAX = 100002;vector G[MAX];int pre[MAX], low原创 2013-01-29 22:19:14 · 635 阅读 · 0 评论