zoukankan      html  css  js  c++  java
  • 数星星

    提供几种做法。

    1.回滚莫队+虚树

    (假了)

    2.树剖+树状数组+平衡树。

    先思考一下如何做链的问题。

    无修改问题可以用扫描线。

    对链扫描线没什么希望,所以对询问扫描线。

    维护相同颜色连续段。发现每次如果暴力更新连续段,则时间复杂度是O(nlogn)的,所以写个set维护即可。

    用树状数组查询。

    树的做法把树剖分成链即可。

    3.lct+树状数组。

    上面的做法用set维护连续段,根据sdoi树点涂色的启发使用lct维护连续段。

    在赋值时修改即可。

    4.线段树+树状数组+树剖。

    树点涂色这道题其实也可以使用线段树维护,这道题也可以用那道题的方法维护。但是比较难写。

    5.分治+虚树+树状数组。待补。

  • 相关阅读:
    javascript中有关this的解析题
    变量声明
    js事件
    js用法
    dom对象
    数据的三大储存格式
    函数
    全局环境
    循环语句及案例
    条件语句
  • 原文地址:https://www.cnblogs.com/cszmc2004/p/13144363.html
Copyright © 2011-2022 走看看