题目:

https://loj.ac/problem/6169

分析:

如果是要求两段序列全等的话,有一个套路:

对于{a1,a2,a3} {a4,a5,a6}

设一个素数p,那么如果p^a1+p^a2+p^a3==p^a4+p^a5+p^a6(模一个大质数意义下),那么这两个序列就是一模一样的

那么可以事先求出前缀和,然后对于每个询问,直接前缀和相减比较值即可

但是现在的问题是现在可以有一个位置不相同

我们考虑构建一个询问区间的权值线段树,下标就是a[i],值就是Σp^a[i]

那么很显然,如果对于询问的两个区间,它们的权值线段树的总和相同,那么就YES(是一模一样的)

然后我们可以找到两棵权值线段树最小的下标qmin,满足qmin前的位置,和相同;再找最大的下标qmax,满足qmax后的位置,和相同

然后我们发现,这个qmin和qmax在排序后的数组中的位置要“对齐”,也就是qmin在对应权值线段树中的排名要等于qmax在对应权值线段树中的排名

当然对于每个询问不能都构建一次权值线段树,所以当然用可持久化线段树来维护

O(nlogn+mlogn)

细节:

找到qmin和qmax后,不能确定qmin是属于[a,b]还是[c,d],所以要考虑两种情况,有一种成立就YES,略坑

转载于:https://www.cnblogs.com/wmrv587/p/7123838.html

loj6169 相似序列(可持久化线段树)相关推荐

  1. 【模板】可持久化线段树 1(主席树)

    题目背景 这是个非常经典的主席树入门题--静态区间第K小 数据已经过加强,请使用主席树.同时请注意常数优化 题目描述 如题,给定N个正整数构成的序列,将对于指定的闭区间查询其区间内的第K小值. 输入输 ...

  2. 洛谷P3919可持久化线段树

    P3919 [模板]可持久化数组(可持久化线段树/平衡树) 题目提供者HansBug 站长团 评测方式云端评测 标签O2优化高性能 难度提高+/省选- 时空限制3000ms / 512MB 有了可持久 ...

  3. 【用学校抄作业带你走进可持久化线段树(主席树)】可持久化线段树概念+全套模板+例题入门:[福利]可持久化线段树)

    我似乎很少写这种算法博客 可持久化线段树概念 概念介绍(类比帮助理解) 简单分析一下时间和空间复杂度(内容池) 模板 结构体变量 建树模板 单点修改模板 单点查询模板 区间修改模板(pushup) 区 ...

  4. P3834-【模板】可持久化线段树 1(主席树)

    正题 评测记录:https://www.luogu.org/recordnew/lists?uid=52918&pid=P3834 题意 给定一个长度为n的序列,有m个询问,求一个区间内的第k ...

  5. 主席树 - 可持久化线段树

    模板 P3834 [模板]可持久化线段树 2(主席树) 区间求第 \(k\) 大 模板代码 #include<bits/stdc++.h> using namespace std; #de ...

  6. 学习笔记:可持久化线段树(主席树):静态 + 动态

    学习笔记:可持久化线段树(主席树):静态 + 动态 前置知识: 线段树.线段树分享可以看:@秦淮岸.@ZYzzz.@妄想の岚がそこに 树状数组.\(BIT\)分享可以看:@T-Sherlock.Chi ...

  7. P3919 【模板】可持久化数组(可持久化线段树/平衡树)(入门第一题)

    学习博客:http://www.cnblogs.com/flashhu/p/8297581.html 题目链接:https://www.luogu.org/problemnew/show/P3919 ...

  8. [BZOJ 3207] 花神的嘲讽计划Ⅰ【Hash + 可持久化线段树】

    题目链接:BZOJ - 3207 题目分析 先使用Hash,把每个长度为 k 的序列转为一个整数,然后题目就转化为了询问某个区间内有没有整数 x . 这一步可以使用可持久化线段树来做,虽然感觉可以有更 ...

  9. 【BZOJ4504】K个串 可持久化线段树+堆

    [BZOJ4504]K个串 Description 兔子们在玩k个串的游戏.首先,它们拿出了一个长度为n的数字序列,选出其中的一个连续子串,然后统计其子串中所有数字之和(注意这里重复出现的数字只被统计 ...

最新文章

  1. 小程序用thinkPHP上传文件到腾讯云对象存储空间
  2. 为什么源码编译安装mysql_从源码编译安装MySQL的步骤
  3. JQ实现三个Select下拉框互斥
  4. 电子书网站推荐(收藏系列)
  5. POJ 3981.字符串替换
  6. Asp.net在IIS6.0权限设置的问题,大牛进
  7. JAVA TCP通信练习
  8. 构建更动态更灵活的分布式计算生态
  9. linux 程序运行出错的时候,如何进行调试动态库
  10. SpringBoot集成Cache缓存(Redis缓存,RedisTemplate方式)
  11. CSS3转换之移位translate(CSS3)
  12. Linux C/C++ —— intent 工具,time 命令
  13. 观测天文角分辨率单位换算
  14. Python3——列表:Python主力
  15. python论文画图模板
  16. 加快建设泛在电力物联网:万物互联 驶向数字经济蓝海
  17. 面试中遇到的“黑嘴”现象
  18. 利用Travis IC实现Hexo博客自动化部署
  19. 使用POI读写word doc文件
  20. C++获取鼠标坐标并移动鼠标

热门文章

  1. bash 生成N位随机字符串
  2. HarmonyOS_BearPi-HM Nano学习笔记之环境搭建
  3. 热力图(Thermodynamic diagram)绘制MATLAB代码详解
  4. ASP.NET : 如何将服务端的多个文件打包下载
  5. 大公司的硬件工程师 和 小公司硬件工程师
  6. 第十六届(2017)中国政府网站绩效评估结果发布 暨经验交流会在京顺利召开
  7. To be, or not to be; that is the question! 生存还是毁灭,这是个值得思考的问题。
  8. php作业的ppt,1、认识PHP.ppt
  9. 用python画小黄人步骤图-怎么用python画小黄人
  10. Optitrack视觉定位下基于ROS及PX4搭建四旋翼多机飞行平台