当前位置: 首页 > news >正文

P9482 [NOI2023] 字符串

对于字符串这种对前后缀有很强性质的结构不用就是浪费了,当然也可能是回文结构这种特殊结构。

原本的结构很难描述,是 \(s[i, i + l - 1] < R (s[i + l, i + 2l - 1])\),起始点就很没有规律,对于不同的 \(l\) 甚至起始点和终止点都不一样,我们现在的目标是找到一个媒介使得可以转化为起始点一样或者中止点一样。

不难发现上述式子等价于 \(s[i, i + 2l - 1] < R(s[i, i + 2l - 1])\),当取等的时候就是回文串了,不然一定的对应区间内分出胜负(超过一半就等价了)。

但是我问你,这个东西你知道怎么算吗?你不知道,还是开头的话,我们到此没有利用任何前缀后缀的信息,这对于一个字符串题显然是不正常的,我们尝试往前后缀上面靠。其实上述条件的充分条件是 \(s[i, n] < s[1, i + 2l - 1]\),为啥是充分条件呢?因为当 \(s[i, i + 2l - 1]\) 是回文串的时候,我们不知道其它地方会判成啥样子,需要减去这一部分。显然,用后缀排序可以轻松求出充分条件的答案。

通俗来说,就是需要减去 \(s[i, i + 2l - 1]\) 是回文串且 \(s[i + 2l, n] < R(s[1, i - 1])\) 的情况,看上去变复杂但是后面区间只有 \(O(n)\) 个,尝试对于每个回文中心考虑,其实对于每个回文中心产生的回文串,上述式子的真假都是一样的(前缀和后缀取的都一样,中间是回文的),稍微转化一下就变成了一个二维数点问题,可以在 \(O(n \log^2 n)\) 的时间内解决。

http://www.jsqmd.com/news/135367/

相关文章:

  • 2025年气动单轨吊供应商市场占有率排名发布,20吨气动葫芦/手拉式气动葫芦/矿山气动葫芦/气动葫芦气动单轨吊供货厂家怎么选择 - 品牌推荐师
  • 大模型与传统AI的代际差异及大小协同的未来
  • Prodigy-HF 工具发布:NER训练与数据上传功能
  • 实用指南:【保姆级教程】apache-tomcat的安装配置教程
  • 《沉思》-摘
  • 从识别到深耕:鲸鸿动能在鸿蒙生态下的游戏用户价值增长实践
  • PySpark和PyFlink如何读取Hive中的表?
  • 项目复审
  • 【计算机毕业设计案例】基于Java springboot滑雪场售票系统基于springboot的滑雪售票系统设计与实现(程序+文档+讲解+定制)
  • 英语_阅读_curiosity is the key to discovery_待读
  • RS232 串口透传 IP 组网配置
  • 事后分析
  • [CSP-S 2025] 员工招聘
  • Azure DevOps Server 正式版本发布
  • Java 类加载
  • 11574_springboot学生宿舍信息的系统(11574)
  • 基于S7-200 PLC与组态王的机械手自动化搬运控制策略
  • 《智慧书》
  • 永磁同步旋转电机发电并网控制仿真模型详解:涵盖PMSG、整流桥、逆变桥与电网,双闭环PI控制策略应用
  • 回收盒马鲜生礼品卡前必看指南 - 京顺回收
  • 【课程设计/毕业设计】基于springboot+vue的医疗设备管理系统基于SpringBoot+Vue技术的医疗器械管理系统设计与实现【附源码、数据库、万字文档】
  • springboot安康旅游网站的设计与实现(11571)
  • ipv6设置,后面带个参数(指定设备接口名称):br0或ppp0
  • MATLAB R2021B环境下基于深度学习的车道线检测方法
  • 基于组态王技术的锅炉控制系统仿真研究与实现
  • 《蔡磊:纵使身体陨落,也要向死而生》
  • 未给entity的主属性赋值,Mybatisplus却抛出了type mismatch异常。——————分享一下Mybatisplus主键填充机制
  • 如何快速掌握Maye启动工具:新手必备的完整指南
  • 《生命的进程》
  • Java计算机毕设之基于SpringBoot+Vue技术的医疗器械管理系统设计与实现医疗机构对医疗器械高效、精准管理(完整前后端代码+说明文档+LW,调试定制等)