acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
  • 商城
登录
注册
题目详情提交记录(0)
  • 题解(求赞)

    用一个数据结构模拟另一个数据结构。 我们发现: 插入的时候,首先找到它前驱和后继,在spalyspalyspaly中它们显然是连续的,一定有一个是另一个的祖先。那么我们就可以找到深的那个把新节点接在它下面。 单旋最小最大值,就是把它的儿子直接接到父亲上,并且把它取出来,把原树挂在它下面,此时它的子树以外的节点的深度都+1+1+1了。 删除最大最小值,就是把它的儿子直接接到父亲上,并把它扔掉,此时它子树中的节点的深度都−1-1−1了。 发现点权互不相同,那么我们就能用离散化权值线段树维护深度和计算前驱后继(就是维护关键码为keykeykey的节点的深度以及存不存在) 当然也得模拟出这棵树的结构,但是这并没有什么难度。

    userId_undefined
    红尘一梦
    时空双修者贪心·贪心尝试者
    1阅读
    0回复
    1点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页