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

    考虑是这样一个问题:

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

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

    image

    然后倍增即可。

  • 相关阅读:
    2015多校.Zero Escape (dp减枝 && 滚动数组)
    UVa-11809
    UVa-1588 Kickdown
    UVa-1587
    UVa-10340
    UVa-202
    UVa-1368
    UVa-232 Crossword Answers
    UVa-227
    UVa-455 Periodic Strings
  • 原文地址:https://www.cnblogs.com/dixiao/p/15147310.html
Copyright © 2011-2022 走看看