图论:欧拉路径(回路)
ProLightsfxjh
这个作者很懒,什么都没留下…
展开
-
UESTC 1634 记得小苹初见,两重心字罗衣 欧拉路径(回路)
题意:二维平面上有n个点,需要将每个点染成红色或蓝色. 要求设计一种染色方案能够使得每一行和每一列的红色的点的数量与蓝色的点的数量之差都不超过1。 欧拉路径(回路) 把每个点当作一条边来处理,横坐标x表示一个点,纵坐标y加MAXN以后也表示一个点,边x-y+MAXN就 唯一确定了这个坐标。然后对这个图,如果有度数为奇数的点,则新建节点a和b,如果是表示横坐标的 点度数为奇数,则向a连边,如果是纵坐标就向b连边。 然后if(adj[i].size())则跑Fleury算法。 这个要写成 inline void原创 2017-05-28 15:24:01 · 1583 阅读 · 0 评论 -
UESTC 1642 老当益壮, 宁移白首之心? 欧拉回路、Fleury算法
题意:构造一个01串,使其满足以下条件: 环状(即首尾相连) 每一位取值为0或1 长度是2^n 对于每个(2^n个)位置,从其开始沿逆时针方向的连续的n位01串(包括自己)构成的数均不相同, 即0到(2^n) - 1中的数各出现一次 欧拉回路、Fleury算法 考虑用一条边表示一个数,那么题目要求就是无重复的遍历完所有边, 则这是一个欧拉图的问题。 对于有公共点的两条边,第一个的后n-1位和第二个的前n-1相同。 这样将一条边的前n-1位和后n-1位作为点,连边,这样来表示它。 如:对于01101,我们可以原创 2017-05-28 16:48:30 · 1224 阅读 · 0 评论