codeforces 13EE. Holes(分块&动态树)

题意:

给你n个编号1到N的洞(N

1.0 a b。把a号洞的po改成b

思路:

假设题目没有改动操作。这题就会非常easy。

我们仅仅须要把每一个洞的出界点和弹跳数预处理出来就能够了。如今关键是怎么处理改动操作。假设还是依照上述预处理方式肯定时间复杂度下不来。

所以我们要想办法使每次改动操作更新尽量少的信息。于是能够想到分块处理。就是把整个序列分成sqrt(N)块。序列中每一个节点记录next[i]表示i结点要跳到下个块的位置。ed[i]表示放到i号洞时的出界位置。st[i]表示。

i跳到下个块须要的步数。这样预处理后每次改动操作仅仅会影响同块内且标号比当前小的位置的信息。

所以最多改动sqrt(n)个位置的信息。对于每次查询操作。因为结点指针仅仅会指向不同的块所以仅仅须要顺着指针统计一遍就好了。最多跳sqrt(n)次。

总时间发杂度O(M*sqrt(N))在能够接受的范围内。

具体见代码:

Original: https://www.cnblogs.com/gccbuaa/p/7401143.html
Author: gccbuaa
Title: codeforces 13EE. Holes(分块&动态树)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/551790/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 在NodeJS中直接运行typescript程序

    最近试着将之前的一些nodejs程序改成typescript封装,最初是通过将ts在运行时编译成js时实现的,今天试了下直接运行ts脚本试了下,发现再Webstrom中是可以直接运…

    技术杂谈 2023年5月31日
    092
  • 62.可

    sdfdsf posted @2022-09-28 08:36 随遇而安== 阅读(4 ) 评论() 编辑 Original: https://www.cnblogs.com/55…

    技术杂谈 2023年6月21日
    0104
  • Redis集群(三)集群模式

    一、 集群的作用 集群,即Redis Cluster,是Redis 3.0开始引入的分布式存储方案。 集群由多个节点(Node)组成,Redis的数据分布在这些节点中。集群中的节点…

    技术杂谈 2023年7月24日
    093
  • 你的哪些骚操作会导致SegmentationFault😂

    你的哪些骚操作会导致Segmentation Fault😂 前言 如果你是一个写过一些C程序的同学,那么很大可能你会遇到魔幻的 segmentation fault,可能一时间抓耳…

    技术杂谈 2023年7月23日
    073
  • Webpack2学习记录-2

    这篇在 webpack-demo 目前下新建一个 w2 目录,学习 webpack.config.js 及 与 npm scripts 的使用。 1、w2 下新建一个 webpac…

    技术杂谈 2023年6月1日
    088
  • 新人公司选择及进入公司后注意事项

    公司/平台选择 优先选择走在未来航道上的那些 快速发展的公司 确认所选公司是否是一家 以技术驱动,以技术文化为主导的公司 新人进入公司后要注意 一般的开发流程是:需求分析➡️设计➡…

    技术杂谈 2023年7月25日
    086
  • .NET服务治理之限流中间件-FireflySoft.RateLimit

    FireflySoft.RateLimit自2021年1月发布第一个版本以来,经历了多次升级迭代,目前已经十分稳定,被很多开发者应用到了生产系统中,最新发布的版本是3.0.0。 它…

    技术杂谈 2023年7月10日
    0122
  • 你真的了解word-wrap和word-break的区别吗?

    这两个东西是什么,我相信至今还有很多人搞不清,只会死记硬背的写一个word-wrap:break-word;word-break:break-all;这样的东西来强制断句,又或者是…

    技术杂谈 2023年5月31日
    092
  • 数据结构简单话(一)线性表

    前言 逻辑结构 物理存储结构 一、顺序表 二、链表 总结 前言 本菜鸟笔者打算入门一下数据结构,在学习过程中通过自己简单话术总结相关基础知识要点,希望能帮助同样在入门的小伙伴们快速…

    技术杂谈 2023年6月21日
    059
  • 实战模拟│JWT 登录认证

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月11日
    057
  • IDEA:库源与类的字节码不匹配

    在我配置pom.xml文件后,进行代码编辑,发现引入的方法并不是想要的内容,然后我就进入下载源码后进入到源码中发现我想要的方法和导入的jar包内的源码方法并不相同 ,于是到jar的…

    技术杂谈 2023年6月21日
    082
  • 系统集成

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年5月31日
    0108
  • zabbix items 历史数据导出python脚本

    个人博客地址 http://www.darkghost.life zabbix items采集到的数据不支持页面导出,这对于需要源数据进行二次加工或生成报表来说不是很友好 做个小脚…

    技术杂谈 2023年7月25日
    069
  • lua基本语法案例

    print(‘打印换行:\nhelloworld\n’) –local用来声明局部变量,全局变量不用指定 –Lua声明变量的时候,并不需要指定数据类型: –声明字符串 loc…

    技术杂谈 2023年5月30日
    0108
  • 《深度工作:如何有效使用每一点脑力》读后感

    空闲时间阅读了一下《深度工作:如何有效使用每一点脑力》,作为一个沉迷网络的人,已经很难有聚精会神的时候,所以阅读此书,记录一下读后感,争取应用到生活当中。全书分为两个方面进行说明:…

    技术杂谈 2023年6月21日
    079
  • 从零开始制作一个linux iso镜像

    一、前言 对于一个极简化的linux系统而言,只需要三个部分就能组成,它们分别是一个linux内核、一个根文件系统和引导。以下是本文制作linux iso镜像所用到的系统和软件: …

    技术杂谈 2023年7月11日
    087
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球