传送门

题意

给定一个 \(n\) 个点的无向图,最初图中无边。两种操作:

  • 1 x y\(x,y\) 中有边,则删去;否则加入。
  • 2 x y 询问 \(x,y\) 是否连通。

\(x,y\) 均加密,真实的 \(x,y\)\((x+lstans-1) mod\ n+1,(y+lstans-1) mod\ n+1\)

题解

动态图连通性。但无需 \(LCT+ETT\),因为这是假加密。注意到 \(lstans\)\(0\)\(1\),则真实值只有两种情况。

\(O(n \log n)\) 的方法是线段树分治,但我看不懂。这里只说 \(O(n^{\frac{4}{3}} \log n)\) 的分块。

并查集支持撤销,但图上删边不是撤销。一种 \(O(n^2)\) 的暴力是,对于每个询问,将它前面的所有还存在的线段提出来,重新构建并查集。

受此启发,我们考虑分块,设块大小为 \(T\)。对每个块,将前面的所有还存在的线段提出来:这其中有两种,一种是此块中不可能出现的,状态一定不变;另一种是可能出现的,状态可能会变。我们对第一种先构建并查集。将第二种加入一个集合中(第一次加,第二次减,类似异或 \(1\))。

接着考虑块内的询问。用类似暴力的方法,将在块内且在此询问前的修改操作加入上面的集合中(方法同上)。此时,我们可以保证此集合大小不超过 \(T\)。于是可以在上面的并查集中加入此集合内的线段,得出答案后撤销。

分析复杂度,为 \(O(\frac{n}{T}n\log n)+O(T^2\log n)\)。当 \(T=n^{\frac{2}{3}}\) 时,为 \(O(n^{\frac{4}{3}}\log n)\)

原文地址:http://www.cnblogs.com/FishJokes/p/16787755.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性