首页 > 其他分享 >怎么这么唐诗的 DS 都做不出来啊

怎么这么唐诗的 DS 都做不出来啊

时间:2024-10-18 21:09:46浏览次数:1  
标签:这么 子树 唐诗 更改 线段 最大值 tag 维护 DS

虽然下蛋爷和红黑树都没做出来。

description

你有一颗有根树,有三种操作:

  • 对 \(x\) 子树内深度为 \(k\) 的所有点 \(+s\) 并求出最大值。
  • 对 \(x\) 子树内深度 \(\le k\) 的所有点 \(+s\) 并求出最大值。
  • 对 \(x\) 子树内所有点 \(+s\) 并求出最大值。

规定:子树内,子树的根节点深度为 \(0\)。

\(1 \le k \le 10\)。

solution

确实自己蛮唐的。

考虑这么一件事情,我对于每个点 \(x\) 维护 \(x\) 子树 \(10\) 层以内所有的按照 BFS 序顺序的值,也就是对于每一层维护一个线段树,发现一个事情,我对于 \(1, 2\) 操作,只会对 \(x\) 的 \(k\) 级祖先的线段树进行更改,这个复杂度大概是 \(O(k^2)\) 的,虽然但是能过去就好了。然后考虑子树 \(+s\) 怎么维护,本质上就是我们打上一个 \(tag\),表示将所有点的所有线段树都进行更改,只有 \(x\) 的 \(k\) 级祖先不是全部更改,但是发现最大值可能不太好维护,让我想想。

哦本质上我还可以维护一个 DFS 序,再对每个点维护一个子树最大值,对于一个结点的更改信息,我们直接跳祖先即可,时间复杂度是 \(\log^2 n\) 的,相当于我又给祖先打上了一个 \(tag\),BFS 序维护的是每个点内部的线段树,而 DFS 序维护的是每个点打 \(tag\) 的线段树,发现树链剖分既可以维护链又可以维护子树,相当于两个 \(tag\) 都可以用同一个线段树进行操作。

等等我好像只对祖先做了更改,没对子树内部点做更改。没关系我每次更改可以暴力把 \(x\) 的 \(k\) 级祖先的值对其进行一次 \(tag\) 覆盖,不过有很多细节要考虑。

标签:这么,子树,唐诗,更改,线段,最大值,tag,维护,DS
From: https://www.cnblogs.com/alexande/p/18475045

相关文章

  • Redshift渲染的四个小技巧,实现照片级效果!
    在进行3D项目工作时,有时需要提供逼真的渲染结果。有许多渲染器可以简单地实现这一点,但像Redshift这样的渲染器并非如此。你需要关注更多的设置,本文将介绍如何在Redshift中获得逼真的渲染效果,以及如何通过云渲染技术进一步提高渲染效率和质量。一、Redshift中获得逼真渲染效果的......
  • 【做题记录】ds合集 Part III
    ds合集的Part3,此合集包含贪心问题。贪心问题CF30E题目链接考虑对一个\(a'\)找到其对于的\(a\),肯定是越前越优,那么拿\(S\)的反串做个kmp即可得到每个\(a\)的第一次出现位置。然后就是在区间中找最长的奇回文串,manacher预处理,然后二分半径\(len\),看看\([l+len-1,......
  • 【做题记录】ds合集 Part II
    ds合集的Part2,此合集包含分治问题和位问题。分治问题CF452F题目链接枚举\(i\),考虑差为\(k\),即\(a_i-k,a+k\)是否在不同的两侧。把在\(i\)前面的\(a_j\)设为\(1\),就是要找以\(i\)为中心半径在\(\min(a_i,n-a_i+1)\)的串是否是回文串。线段树维护即可。复杂......
  • modsecurity: 配置文件中的配置项之一
    一,是否启用防火墙SecRuleEngine是接受来自ModSecurity-CRS目录下的所有规则的安全规则引擎。因此,我们可以根据需求设置不同的规则。#SecRuleEngineOn:将在服务器上激活ModSecurity防火墙。它会检测并阻止该服务器上的任何恶意攻击。#SecRuleEngineDetectionOnly:如果这个规则......
  • 昇思MindSpore进阶教程--故障恢复
    大家好,我是刘明,明志科技创始人,华为昇思MindSpore布道师。技术上主攻前端开发、鸿蒙开发和AI算法研究。努力为大家带来持续的技术分享,如果你也喜欢我的文章,就点个关注吧概述模型训练过程中,可能会遇到故障。重新启动训练,各种资源的开销是巨大的。为此MindSpore提供了故障......
  • GEE 教程:Landsat TOA数据计算地表温度(LST)
    目录简介函数expression(expression, map)Arguments:Returns: ImagereduceRegion(reducer, geometry, scale, crs, crsTransform, bestEffort, maxPixels, tileScale)Arguments:Returns: Dictionary代码结果简介地表温度(LandSurfaceTemperature,LST)指......
  • VU9P处理板设计原理图:412-基于单XCVU9P+双DSP C6678的双FMC接口 100G光纤传输加速计算
    基于单XCVU9P+双DSPC6678的双FMC接口100G光纤传输加速计算卡  一、板卡概述板卡包括一片Xilinx FPGA  XCVU9P,两片 TI 多核DSP TMS320C6678及其控制管理芯片CFPGA.设计芯片满足工业级要求。FPGA VU9P 需要外接4路QSFP+(100Gbps)及其两个FMC HPC接......
  • TowardsDataScience-博客中文翻译-2022-五十二-
    TowardsDataScience博客中文翻译2022(五十二)原文:TowardsDataScience协议:CCBY-NC-SA4.0一维信号的迁移学习原文:https://towardsdatascience.com/transfer-learning-with-a-one-dimensional-signal-76a0d543e9aa加上数据洞察力图片作者。目录——简介——信号统计......
  • TowardsDataScience-博客中文翻译-2022-二十九-
    TowardsDataScience博客中文翻译2022(二十九)原文:TowardsDataScience协议:CCBY-NC-SA4.0如何使用计算机视觉读取酒瓶上的标签?(第一部分)原文:https://towardsdatascience.com/how-to-read-a-label-on-a-wine-bottle-using-computer-vision-part-1-25447f97a761欢迎阅读本......
  • ES(文档,DSL)
    文档操作有了索引库,接下来就可以向索引库中添加数据了。Elasticsearch中的数据其实就是JSON风格的文档。操作文档自然保护增、删、改、查等几种常见操作,我们分别来学习。1.新增语法POST/索引库名/_doc/文档id{"字段1":"值1","字段2":"值2","字段3":{......