zoukankan      html  css  js  c++  java
  • CF1140G Double Tree

    考虑是这样一个问题:

    有一颗树,每棵树有两种状态,在该点转换状态有代价,同一状态的点之间有代价边相连。求两个点相遇代价最小值,要求两个点相遇时状态相同。

    将图视作两棵树,一棵全是奇点,编号为0,一棵全是偶点,编号为1,两部分的对应点之间一一有边相连。
    先求出两棵树对应点之间的最小距离,
    用两遍dfs,一遍dfs求出走子树的对应点之间的最小距离,另一遍dfs在此基础上看看是否能通过走父辈节点来更新最小距离。

    image

    然后倍增即可。

  • 相关阅读:
    拓扑排序
    数论初步(费马小定理)
    HDU
    HDU
    八月馒头
    萌新仓鼠,参上!
    新姿势
    字典树
    HDU
    Codeforce
  • 原文地址:https://www.cnblogs.com/dixiao/p/15147310.html
Copyright © 2011-2022 走看看