删除这条边后,图是一个二分图

那么这条边一定要在所有奇环上,并且不在偶环上。

把dfs树搞出来,遇到环就把整个环分奇偶情况标记

标记树上的一段路径可以树上差分一下

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
const int inf=(1<<30)-1;struct node
{int x,y,next;
}a[410000];int len,last[110000];
int ec[410000],ef[410000];
int pc[110000],pf[110000];
void ins(int x,int y)
{len++;a[len].x=x;a[len].y=y;a[len].next=last[x];last[x]=len;
}
int z,cnt,dfn[110000],dep[110000],fr[110000];
void dfs(int x)
{dfn[x]=++z;for(int k=last[x];k;k=a[k].next){int y=a[k].y;if(dfn[y]==0){dep[y]=dep[x]+1;fr[y]=k;dfs(y);}}for(int k=last[x];k;k=a[k].next){int y=a[k].y;if(dfn[y]>dfn[x]&&fr[y]!=k){int e=dep[y]-dep[x]+1;if(e&1)ec[k>>1]++,pc[y]++,pc[x]--,cnt++;else   ef[k>>1]++,pf[y]++,pf[x]--;}}
}
void dfs2(int x)
{dfn[x]=++z;for(int k=last[x];k;k=a[k].next){int y=a[k].y;if(dfn[y]==0){dfs2(y);pc[x]+=pc[y];pf[x]+=pf[y];}}if(dfn[x]!=1){ec[fr[x]>>1]+=pc[x];ef[fr[x]>>1]+=pf[x];}
}int tp,list[110000];
int main()
{freopen("a.in","r",stdin);freopen("a.out","w",stdout);int n,m,x,y;scanf("%d%d",&n,&m);len=1;memset(last,0,sizeof(last));for(int i=1;i<=m;i++){scanf("%d%d",&x,&y);ins(x,y),ins(y,x);}z=cnt=tp=0;for(int i=1;i<=n;i++)if(dfn[i]==0)fr[i]=0,dep[i]=0,dfs(i);z=0;memset(dfn,0,sizeof(dfn));for(int i=1;i<=n;i++)if(dfn[i]==0)dfs2(i);int ans=0;for(int i=1;i<=m;i++)if(ec[i]==cnt&&ef[i]==0)ans++;printf("%d\n",ans);return 0;
}

转载于:https://www.cnblogs.com/AKCqhzdy/p/10223355.html

bzoj4238: 电压相关推荐

  1. BZOJ4238 : 电压

    如果一条边可行,那么删掉这条边后,剩下的图是二分图且该边的两端点颜色相同. 那么可行的边必然属于所有奇环的交集,且不属于任何偶环. 随便取一棵生成树,对于一条非树边,它形成了环: 若是偶环,则将环上的 ...

  2. 如何设计四象限电压转换电路?

    四象限电源是:可以吸收和提供正负电流和电压的电源. 虽然简单电压转换器可以从输入电压生成固定的输出电压,但在某些应用中,这种特性是不够的. 举个例子:控制与电容相连的电压节点,这些电容可以充电至任何电 ...

  3. 树莓派电压过低 串口数据错误增多

    调试过程中,树莓派串口读单片机上传的数据 的程序突然一堆checksum error. 换一块满电的LiPo电池就大幅减少了报错. 一开始猜测原因 可能是电压过低导致CPU运行慢了(可能叫做" ...

  4. 单片机ad转换测电压c语言,大家帮我看下这个STC AD转换 测电压程序错在哪里,谢谢了...

    大家帮我看下这个STC AD转换 测电压程序错在哪里,谢谢了 [复制链接] #include"ADC电压表.H" #include uchar value; void adc_in ...

  5. 隔空测量电压:电场强度测试仪-FMX-004

    简 介: 利用绝缘表所产生的直流高压在单面覆铜板附近产生电场,测试电场强度测试仪FMX-004的读数,看是否与已知电压所产生的电场强度相同.通过实验验证了FMX-004的性能,讨论了影响FMX-004 ...

  6. 基于场效应管2N3819制作非接触电压检测 - 购买到假货了

    简 介:   的确在淘宝 上有各种销售渠道,开始的寻找价格便宜的 2N3819,结果看来是购买到的假货了. 关键词: 2N3819,假货,淘宝 #mermaid-svg-NPVrCg66QuoJgH8 ...

  7. 记录低频的混沌电压波形-双晶体管混沌信号

    简 介: 通过更换电路中的电容参数,进一步降低了混沌信号的中心频率,使用声卡进行记录的时候可以提高记录数据的完整性. 关键词: 混沌信号,晶体管,声卡,计算机记录 #mermaid-svg-zuRyQ ...

  8. 用于检测AC电压的无接触电压检测器

    简 介: 给出了网络上一些基本的非接触交流电压检测电路.在第二部分进行分析了基于电容耦合下的原理分析.这对于一些网络上基于电磁感应方面的解释更接近于实际情况. 关键词: 电压检测,AC,非接触 #me ...

  9. TPS54360 输入60V,输出3.5A降压开关电压

    ▌01 TPS54360 TPS54360 输入电压可以高达60V(max 65V).这比起 LM2527 最大输入电压40V要高.使用这款开关电压降压芯片用在48V的应用电路中. 注意: LM272 ...

  10. N-MOS的G-S电容随着DS电压的变化关系

    ➤ 01 栅极-源极输入电容与DS电压 对于 MOS管 往往存在较大的输入电容.这个电容随着DS的变化关系使得它可以当做一个可变电容来使用. 下面是IRF3710的数据手册的输入电容与DS电压之间的关 ...

最新文章

  1. 1.模型 16个相机参数(内参、外参、畸变参数)
  2. 系统调用与软件中断SWI的实现
  3. 群同态基本定理证明_有限群的线性表示 | 表示与群代数
  4. Java实训项目11:GUI学生信息管理系统 - 实现步骤 - 创建服务接口
  5. yeoman、bower、grunt 开发收集
  6. 【30集iCore3_ADP出厂源代码(ARM部分)讲解视频】30-11层驱动之FSMC
  7. 工厂车间现场管理必备利器,MES生产管理系统
  8. Confluence 插入符号和特殊字符
  9. java查询城市区号_城市查区号示例代码
  10. Android获取QQ名片赞数量,教你如何提高QQ名片赞数量 如何增加QQ赞数量
  11. 如何将VSCode添加到鼠标右键菜单
  12. android中进程间通信的几种方式
  13. CreateJS 入门小记
  14. 18天精读掌握《费曼物理学讲义卷一》 第2天 2019.6.13
  15. 机器学习实战代码注释svm_使用经典机器学习模型动手进行毒性分类并最大程度地减少注释的意外偏见...
  16. Session、Cookie和Token的简介、技术核心和实现原理
  17. 设计模式-创建型模式(单例、简工、工方)
  18. QtOpenGL之绘制三角形Qt5
  19. 微信小程序面试题大全(持续更新)
  20. 前端面试总结:视频会议面试

热门文章

  1. 关键对话:如何高效能沟通(第二章)
  2. OSU双足步行机器人 Cassie利用强化学习站立的源码实现
  3. 前言,flutter页面切换动画
  4. hp 交换机远程连接_Hp服务器 iLO3 使用方法
  5. 阿里云oss添加cdn
  6. 使用机器学习进行语言翻译:神经网络和seq2seq为何效果非凡?
  7. 根据经纬度查询地理位置API
  8. 吴家坟女子专修学院郭杜校区计算机分院的学年总结
  9. 定义一个接口ITest,接口中有3个抽象方法如下。
  10. 按键1按下数码管显示1,按键2按下数码管显示2,按键3按下8个LED灯实现流水灯效果;