http://acm.hdu.edu.cn/showproblem.php?pid=3018

题意:

给出一张图,不能走重复边,可以几笔画遍历完所有的边

连通子图内如果没有度数为奇数的点,这个子图可以一笔画

否则,需要奇度数点的个数/2 笔

因为每笔可以消除两个点的奇度

#include<cstdio>
#include<iostream>using namespace std;#define N 100001
#define M 200001int fa[N];int sum[N],d[N];
int odd[N];struct node
{int u,v;
}e[M];void read(int &x)
{x=0; char c=getchar();while(!isdigit(c)) c=getchar();while(isdigit(c)) { x=x*10+c-'0'; c=getchar();}
}int find(int i) { return fa[i]==i ? i : fa[i]=find(fa[i]); }    int main()
{int n,m,u,v;int ans;while(scanf("%d",&n)!=EOF){read(m);for(int i=1;i<=m;++i) read(e[i].u),read(e[i].v);for(int i=1;i<=n;++i) fa[i]=i,sum[i]=1,odd[i]=d[i]=0;for(int i=1;i<=m;++i){d[e[i].u]++;d[e[i].v]++;u=find(e[i].u);v=find(e[i].v);if(u!=v) sum[v]+=sum[u],fa[u]=v;}ans=0;for(int i=1;i<=n;++i)if(d[i]&1) odd[find(i)]++;for(int i=1;i<=n;++i)if(find(i)==i && d[i]){if(!odd[i]) ans++;else ans+=odd[i]/2;}printf("%d\n",ans);}
}

转载于:https://www.cnblogs.com/TheRoadToTheGold/p/8424561.html

hdu 3018 Ant Trip相关推荐

  1. HDU 3018 Ant Trip(一笔画问题)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=3018 题意:每条边过且只过一次,问至少要画几笔才能全部边都经过..孤立的点忽视. 分析:首先,你用笔来画的 ...

  2. hdoj 3018 Ant Trip(无向图欧拉路||一笔画+并查集)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3018 思路分析:题目可以看做一笔画问题,求最少画多少笔可以把所有的边画一次并且只画一次: 首先可以求出 ...

  3. I - Ant Trip (无向图欧拉回路+并查集),判断

    I - Ant Trip 参考博客:Ant Trip(欧拉回路+并查集) 参考:欧拉路径问题与欧拉回路问题 题意:给你无向图的 N 个点和 M 条边,保证这 M 条边都不同且不会存在同一点的自环边,现 ...

  4. Ant Trip(HDU 3018)---多笔画问题

    题目链接 题目描述 Ant Country consist of N towns.There are M roads connecting the towns. Ant Tony,together w ...

  5. hdu 3018 图 欧拉回路 并查集

    http://acm.hdu.edu.cn/showproblem.php?pid=3018 题意  --许多蚂蚁 遍历一个图 每一条边只能走一次  问至少要把这些蚂蚁分为几群 说白了就是 至少几笔可 ...

  6. hdu3018 Ant Trip

    题意:拓展一笔画问题.给一个无向图,每条边只能经过一次,问多少笔能将图画完.孤立的点不用考虑. 思路:先把每个连通分量找出来,然后数这个连通分量的度为奇数的点,如果该连通分量是欧拉通路,显然可以一笔画 ...

  7. 图论--欧拉路,欧拉回路(小结)

    在题目中在慢慢细说概念 1.HDU - 3018 Ant Trip 题目大意:又N个村庄,M条道路.问须要走几次才干将全部的路遍历 解题思路:这题问的是有关欧拉路的判定 欧拉路就是每条边仅仅能走一次, ...

  8. 欧拉图简述---(一笔画问题)

    主要参考大佬博客:https://blog.csdn.net/u011815404/article/details/86590498 欧拉图 欧拉图是在大家小学时学奥数都学习过的一个类型的题,无论你学 ...

  9. 【转载】图论 500题——主要为hdu/poj/zoj

    转自--http://blog.csdn.net/qwe20060514/article/details/8112550 =============================以下是最小生成树+并 ...

最新文章

  1. mysql整理类型_Mysql 时间类型整理
  2. AndroidApplication Fundamentals(Android应用基础)
  3. 设备选购需要注意的几个方面
  4. 1082 射击比赛 (20 分)
  5. 电子工程可以报考二建_非工程类专业也能报考二建吗?
  6. 一半的一半(51Nod-2382)
  7. 区块链学习笔记:DAY01 区块链的技术原理
  8. css3中transition和display的坑
  9. 美国CISA 列出300个已遭利用漏洞,督促组织机构及时修复
  10. java项目学习_一个Java项目的学习
  11. 基于QT的UDP测试工具
  12. UE4读取BackBuffer缓冲区贴图(屏幕表面)
  13. 如何辩证看待技术与业务的关系
  14. 【毕业季】图匮于丰,防俭于逸;治不忘乱,安不忘危。
  15. 多元线性方程的几种解法
  16. 《算法图解》系列笔记(七)—— 狄克斯特拉算法
  17. win10模拟器(win10模拟器无限蓝卡)
  18. JavaWeb (SSM框架)
  19. 怎么做好电商运营?40份电商运营表格模板,你离优秀的运营只差了一个表格
  20. 回望我的2019:35岁的程序员,没想到找工作这么难!

热门文章

  1. hdu2089 不要62 数位dp
  2. mysql通过字段凝视查找字段名称
  3. 人生第一次删好友,删的就是你!连路飞都怒了!
  4. 【非凡程序员】 OC第一节课 (指针浅析)
  5. [转]T4模版引擎之生成数据库实体类
  6. 安装完毕freebsd的后续工作,安全设置及其他(适合新手)
  7. 出国留学想申请国家留学基金委的奖学金?传说中的csc! 从这里入手就对了!
  8. apple的photo实际上是一个dashboard
  9. U3D 文档 GPU INSTANCING
  10. 大地形实时渲染资源网收集