CF1588F Jumping Through the Array

技术CF1588F Jumping Through the Array CF1588F Jumping Through the ArrayCF1588F Jumping Through the Arra

穿过阵列

CF1588F Jumping Through the Array

给定长度为(n)的序列(a)和排列(p ),可以实现下列操作:

给出\(l,r\)。seek \(\ sum \ limits _ { I=l } { r } a _ I \);

给出\(x,y\)。让我们将\(I \u to p _ I \u)连接成置换环,并将\(y \u)加到环上\(x \u)所在的每个点的权重上。

给出\(x,y\)。Exchange \(p_x,p_y\)。

\ 1 \ le n \ le 2 \ cdot 10^5,-10^8\le a _ I \ le 10^8,1\le p _ I \ le n,1\le q\le 2\cdot 10^5\)。

时间限制\(\text{8000ms}\),空间限制\(\text{512MB}\)。

Solution

按照时间根考虑分治,我们将一起处理\(B\)个连续操作。

我们把\(2\)操作的操作点(即\(x\)和\(3\)操作的操作点(x,y\)染成黑色,只操作这些黑点。

在操作之前考虑每个置换环,如下所示:

我们把它分成几个“链”(红色区域),可以发现每个链在操作中都是作为一个整体出现的,也就是,\(\Delta\)相等:

只有\(2B\)个链,所以我们只需要为每个链维护\(\Delta\)。

对于\(1\)操作,区间\([l,r]\)的点权重之和为\(\sum\limits_{ I=l} {r} \)加上\(\sum\limits_{每个链} \ delta \。

对于\(2\)操作,它必须将\(y\)和复杂性\ (o (b) \)添加到当前\(x\)所在的链和该链所在的环的其他链中。

对于\(3\)运算,我们交换两个黑点的链号,即\(O(1)\)。

在这一点上,我们可以以(o(\ frac { q } { b } \ CDOT(B2 \ log n))\)的复杂性来解决这个问题。

取\(B=\sqrt{n/\log n}\),时间复杂度\(O(q\sqrt{n\log n})\)。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/92786.html

(0)

相关推荐

  • COCOS CREATOR中SrollView如何修改

    技术COCOS CREATOR中SrollView如何修改这篇文章主要为大家展示了“COCOS CREATOR中SrollView如何修改”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并

    攻略 2021年11月19日
  • jquery有哪些读取节点的方法

    技术jquery有哪些读取节点的方法本篇内容介绍了“jquery有哪些读取节点的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够

    攻略 2021年11月15日
  • HBase如何实现多租户

    技术HBase如何实现多租户这篇文章主要介绍了HBase如何实现多租户,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。多租户(multi-tenancy t

    攻略 2021年12月9日
  • Elasticsearch Java Client版本区别及起步是什么

    技术Elasticsearch Java Client版本区别及起步是什么这期内容当中小编将会给大家带来有关Elasticsearch Java Client版本区别及起步是什么,文章内容丰富且以专业的角度为大家分析和叙

    攻略 2021年10月19日
  • 抖音刷粉网站,抖音刷粉丝会被发现吗?

    技术抖音刷粉网站,抖音刷粉丝会被发现吗?时下抖音是当前国内主流,极火爆,极具人气的产品。当你在网上找抖音刷粉丝刷赞大师和米勒抖音刷粉丝软件怎么刷粉丝方法的时候会出现几万条的相关信息.
    抖音刷粉丝大家一定要选择正规的网站平

    测评 2021年11月10日
  • 如何进行JavaScript数据扁平化分析

    技术如何进行JavaScript数据扁平化分析如何进行JavaScript数据扁平化分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。什么是

    攻略 2021年12月4日