zoukankan      html  css  js  c++  java
  • CF1555F Good Graph

    有以下引理:

    不存在两个合法环,他们存在公共边。
    证明:公共边边权为 \(z\),第一个环除去公共边为 \(x\),第二个环除去公共边为 \(y\)
    则有 \(x \oplus z = 1\) \(y \oplus z = 1\),则存在另外一个简单环的权值为 \(x\oplus y = 0\),所以该图不合法。

    我们知道一颗树上是没有环的。

    所以一颗树不影响非树边的加入。

    我们考虑先在这些边按照加边顺序里做一颗生成树出来。

    这些边一定可以存在。

    那么我们考虑那些非树边。

    我们在加入一条非树合法边时,在 \((u,v)\) 这条路径上打上一个\(tag\)

    判断一条非树边是否合法时,我们可以查询 \((u,v)\) 是否有标记,并查询 \((u,v)\) 的异或和。

  • 相关阅读:
    博雅机器学习十讲1
    tensorflow学习笔记1
    卓有成效的程序员3
    卓有成效的程序员2
    卓有成效的程序员1
    探索需求6
    数据预处理
    数据科学介绍
    探索需求5
    探索需求4
  • 原文地址:https://www.cnblogs.com/dixiao/p/15102129.html
Copyright © 2011-2022 走看看