题意:N个点,M条无向边,Q个操作,每个操作中破坏K条边,其中编号和K已经加密,即原数异或之前未联通的个数(给的是原k,但后面有异或后的k的个数个编号),判断每个操作后是否联通

会做题不等于会出题系列..... ╮(╯▽╰)╭

虽然k已经加密,但是由于k后面跟着k个编号,我们依旧能知道加密后的k ╮(╯▽╰)╭

由于一个数异或两次相当于没有异或,所以我们很容易就得到了之前未联通的个数 ╮(╯▽╰)╭

令 c[i]=segma(1~i-1未联通的个数和)

当 c[i] != c[i-1] 时,第(i-1)个操作是联通的,否则是不连通的

于是我们就判断出了1~q-1 操作后的连通性  ╮(╯▽╰)╭

对于第q个操作,暴力并查集维护即可 ╮(╯▽╰)╭

varn,m,t,tx,ty,q,k,p:longint;i                :longint;c,cnt            :array[0..50010] of longint;f                :array[0..100010] of longint;flag             :array[0..500010] of boolean;x,y              :array[0..500010] of longint;
function get_father(x:longint):longint;
beginif x=f[x] then exit(x);f[x]:=get_father(f[x]);exit(f[x]);
end;beginread(n,m);for i:=1 to n do f[i]:=i;for i:=1 to m do read(x[i],y[i]);read(q);for i:=1 to q dobeginread(k);t:=0;while not eoln dobeginread(p);inc(t);cnt[t]:=p;end;c[i]:=t xor k;end;//for i:=2 to q doif (c[i]=c[i-1]) then writeln('Disconnected') else writeln('Connected');//for i:=1 to t do flag[cnt[i] xor c[q]]:=true;t:=0;for i:=1 to m doif not flag[i] thenbegintx:=get_father(x[i]);ty:=get_father(y[i]);if (tx<>ty) thenbeginf[ty]:=tx;inc(t);if t=n-1 thenbeginwriteln('Connected');exit;end;end;end;writeln('Disconnected');
end.

——by Eirlys


bzoj 3563 ╮(╯▽╰)╭+ 并查集相关推荐

  1. BZOJ 3910 并查集+线段树合并

    思路: 1. 并查集+线段树合并 记得f[LCA]==LCA的时候 f[LCA]=fa[LCA] 2.LCT(并不会写啊...) //By SiriusRen #include <cstdio& ...

  2. bzoj 1015 并查集

    代码: //这题可以反着想,把要去掉的点倒着处理变成往图中一个一个的加点,然后用并查集处理联通快就好了. #include<iostream> #include<cstdio> ...

  3. bzoj 2054 并查集

    题意:给定一个序列,多次将某个区间染成某种颜色,求最后每个点是什么颜色 由于只求最后染的颜色,所以倒着染 这样一个位置最多只需要染一次,染过就不需要再染 也就是说,对于当前染色,区间内已经染色的位置这 ...

  4. BZOJ 2143 飞飞侠(线段树优化建边 / 并查集优化最短路)【BZOJ修复工程】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/2143 是 hydro 的 BZOJ ...

  5. bzoj 1050: [HAOI2006]旅行comf(codevs.cn 1001 舒适的路线) 快排+并查集乱搞

    没用的话:好像很久没发博客了,主要是懒太蒟找不到水题.我绝对没弃坑...^_^ 还用些话:本文为博主原创文章,若转载请注明原网址和作者. 进入正题: 先pa网址: bzoj :http://www.l ...

  6. 值得一做》关于并查集的进化题目 BZOJ1015(BZOJ第一页计划)(normal-)

    这道题和以前做过的一道经典的洪水冲桥问题很像,主要做法是逆向思维.(BZOJ第10道非SB题纪念) 先给出题目 Description 很久以前,在一个遥远的星系,一个黑暗的帝国靠着它的超级武器统治者 ...

  7. BZOJ 1015 [JSOI2008]星球大战starwar (逆序并查集)

    BZOJ 1015 思路:并查集只有联边的作用,无法做到拆边,因此采取逆序做法.先将边拆掉,再用并查集进行联边,不同联通块相连则联通块数目减一. 1 #include<bits/stdc++.h ...

  8. BZOJ.4500.矩阵(差分约束 SPFA判负环 / 带权并查集)

    BZOJ 差分约束: 我是谁,差分约束是啥,这是哪 太真实了= = 插个广告:这里有差分约束详(并不)解. 记\(r_i\)为第\(i\)行整体加了多少的权值,\(c_i\)为第\(i\)列整体加了多 ...

  9. BZOJ 4668 冷战——并查集+LCA

    基情链接♂BZOJ 1977 严格次小生成树--浅析最近公共祖先(LCA) 目录 一.题目:冷战 1.题目描述 2.输入 3.输出 4.样例输入 5.样例输出 二.题解 三.代码 ​ 谢谢! 一.题目 ...

最新文章

  1. ES6的字符串与正则表达式
  2. 国家开放大学2021春1026西方经济学(本)题目
  3. 操作系统之文件管理:9、磁盘的结构与磁盘调度算法(先来先服务FCFS、最短寻找时间优先SSTF、扫描算法SCAN、循环扫描算法C-SCAN、LOOK调度算法、C-LOOK调度算法)
  4. mysql1040_解决mysql 1040错误Too many connections的方法
  5. HDU 6044 Limited Permutation 读入挂+组合数学
  6. 在vs2010 .net 4.0 引用dll .net 2.0(转)
  7. python深度学习介绍
  8. 电脑主板资料库 03【转至www.ongood.com.tw】【FreeXploiT收集整理】
  9. content-box和boder-box的区别
  10. TreeSet 和 TreeMap 排序
  11. 前端HTML+CSS学习笔记
  12. Linux快速复制或删除大量小文件 1
  13. markman psd
  14. android电视 怎么调电视机的信号源,如何设置智能电视、盒子信号源?原来这么简单!具体方法如下...
  15. 深度学习方法(二十一):常用权重初始化方法Xavier,He initialization的推导
  16. WebDAV之葫芦儿·派盘 + Strongbox
  17. c#输出二维数组矩阵
  18. JS点击灯泡变亮(学自W3school)
  19. PSAM嵌入式驱动——概念
  20. 树莓派4B+ 连接WIFI后,图标频闪,无法上网

热门文章

  1. vue项目,svn提交代码时忽略node_modules文件夹提交。
  2. 《Single Image Depth Prediction with Wavelet Decomposition》论文笔记
  3. Wireshark在VMware虚拟机Win7上打开没有显示网络适配器——Wireshark版本不对应
  4. DockerFile---构建docker镜像的文件
  5. Apache ShardingSphere 首篇论文被 ICDE 收录,全球数据库发展迎来新局面
  6. [RN] React Native 使用精美图标库react-native-vector-icons
  7. 杰理之KeyPage【篇】
  8. 关于:first-child的误区
  9. 通用嵌入式系统软件测试平台的设计
  10. Linux系统的广播和组播