[THUWC 2018] 字胡串

news/2025/10/13 15:35:22/文章来源:https://www.cnblogs.com/rain-city/p/19138608

只需要使用 Z 函数的单 \(\log\) 解法,不依赖于字符集大小。

考虑固定 \(B\),比较从 \(x, y\) 插入谁更优(\(x < y\))。删除掉公共的前后缀可知等价于比较 \(B + A_{x + 1 \sim y}\)\(A_{x + 1 \sim y} + B\) 的字典序。

有一个经典结论:比较 \(A + B\)\(B + A\) 的字典序,等价于比较 \(A^{+\infty}\)\(B^{+\infty}\) 的字典序。

证明:考虑用比较 \(c = |\Sigma| + 1\) 进制小数来表示比较字典序。设 \(A, B\) 对应的小数分别为 \(a, b\)\(0 \leq a, b < 1\))。则 \(A + B < B + A\) 当且仅当 \(a + \frac b {c^{|a|}} < b + \frac a {c^{|b|}}\),当且仅当 \(a \times \frac {c^{|a|}} {c^{|a|} - 1} < b \times \frac {c^{|b|}} {c^{|b|} - 1}\),当且仅当 \(A^{+\infty} < B^{+\infty}\)

所以,\(x\)\(y\) 优当且仅当 \(B^{+\infty} \leq A_{x + 1 \sim y}^{+\infty}\)

考虑如果对 \(B^{+\infty}\) 扫描线,则答案单调不降。考虑先把询问按照 \(B^{+\infty}\) 排序,再决策单调性分治。问题转化为求单组询问的答案。如果可以 \(\mathcal O(|A| + |B|)\) 解决单组询问,那整个问题的复杂度就是单 \(\log\)

考虑如何高效地比较 \(B + A_{x + 1 \sim y}\)\(A_{x + 1 \sim y} + B\) 的字典序。如果 \(y - x < |B|\),那么问题比较容易解决:先比较 \(B_{1 \sim y - x}\)\(A_{x + 1 \sim y}\),预处理 \(B + \texttt{\#} + A\) 的 Z 函数后可以 \(\mathcal O(1)\) 判断;如果相等,再比较 \(B_{y - x + 1 \sim |B|}\)\(B_{1 \sim |B| - (y - x)}\),同样可以 \(\mathcal O(1)\) 判断;如果还相等,最后比较 \(A_{x + 1 \sim y} = B_{1 \sim y - x}\)\(B_{|B| - (y - x) + 1 \sim |B|}\),仍然可以 \(\mathcal O(1)\) 判断。

如果 \(y - x \geq |B|\),设 \(A_{x + 1 \sim y} = B^k C\),其中 \(B\) 不是 \(C\) 的前缀,则问题等价于比较 \(B + C\)\(C + B\) 的字典序,仍然可以使用 \(y - x < |B|\) 的情况的方法解决。至于如何求出 \(k\),双指针即可。

代码:

#include <bits/stdc++.h>
using namespace std;#define rep(i, a, b) for(int i = (a); i <= (b); ++i)
#define sz(x) (int)(x).size()
using ll = long long;const int N = 1e6 + 10;
int n, q;
string a;
pair<string, int> qry[N];
int ans[N];int z[2 * N];void get_z(const string &s) {int l, r = 1;rep(i, 2, sz(s) - 1) {if(i <= r && z[i - l + 1] <= r - i) {z[i] = z[i - l + 1];continue;}z[i] = max(0, r - i + 1);while(s[z[i] + 1] == s[z[i] + i]) ++z[i];}
}bool cmp(const string &b, int lo, int x, int y) {int len = sz(b) - 1;int t = z[sz(b) + x - lo + 1];if(t < min(y - x, len)) return b[t + 1] < a[x + t + 1];assert(y - x < len);t = z[y - x + 1];if(t < len - (y - x)) return b[y - x + t + 1] < b[t + 1];t = z[len - (y - x) + 1];if(t < y - x) return b[t + 1] < b[len - (y - x) + t + 1];return true;
}void solve(int l, int r, int lo, int hi) {if(l > r) return;int mid = (l + r) >> 1;string b = " " + qry[mid].first;get_z(b + "#" + a.substr(lo + 1, hi - lo));int len = sz(b) - 1;int res = lo, j = lo;rep(i, lo + 1, hi) {if(i - j >= len && z[sz(b) - lo + j + 1] >= len) j += len;if(j < i && !cmp(b, lo, j, i)) res = j = i;}ans[qry[mid].second] = res;solve(l, mid - 1, lo, res);solve(mid + 1, r, res, hi);
}int main() {cin.tie(0)->sync_with_stdio(0);cin >> n >> q >> a, a = " " + a;rep(i, 1, q) {cin >> qry[i].first;qry[i].second = i;}sort(qry + 1, qry + q + 1, [&](auto x, auto y) -> bool {return x.first + y.first < y.first + x.first;});solve(1, q, 0, n);rep(i, 1, q) cout << ans[i] << "\n";
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/936195.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025 年钢结构厂家推荐榜:箱型H型/厂房仓库/电厂/桥梁/农牧业/锅炉/场馆/高层框架/装配式钢结构工厂,聚焦安全与品质,助力建筑项目精准选品

随着装配式建筑政策推进、工业升级及大型基建项目增多,钢结构凭借抗震性强、施工效率高、绿色环保等优势,已成为建筑领域核心材料之一,2025 年市场规模预计持续扩容。但市场增长也带来厂商资质参差、技术能力不一的…

老版本 EasyExcel 一个神出鬼没的异常 - 教程

老版本 EasyExcel 一个神出鬼没的异常 - 教程2025-10-13 15:25 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: b…

2025 年粮库空调厂家最新推荐榜:聚焦技术创新与实用适配,助力粮库精准选购优质设备粮库空调一体机/粮库空调机组/碳钢喷塑粮库空调/低温粮库空调厂家推荐

引言粮食储备安全关乎国计民生,而粮库空调作为保障粮食品质、减少存储损耗的核心设备,其性能优劣直接影响粮食存储效果。当前市场上粮库空调厂家数量繁杂,产品质量、技术水平与服务能力差异显著,部分产品存在温湿度…

2025 年最新推荐!泳池除湿热泵厂家推荐榜单重磅发布,全方位解析优质厂家实力助您选对设备双模式/多功能/三集一体/全直流变频/室内/变频式泳池除湿热泵厂家推荐

引言 随着室内泳池的普及,泳池环境温湿度控制成为关键难题。高湿度不仅影响游泳者舒适度,还会损害建筑结构、滋生霉菌,传统设备能耗高且控温除湿效果差。如今市场上泳池除湿热泵品牌杂乱,产品质量、技术水平参差不…

django template filter safe escapejs json_script等

========safe==============|safe 可以当作html的tag渲染 ====in view: context[user_content1]="<b>Hello</b>"context[user_content2]="<b>Hello</b>"return render(re…

2025年GEO(AI搜索优化)厂家口碑推荐排行榜

摘要 随着人工智能技术的飞速发展,GEO(AI搜索优化)行业在2025年迎来爆发式增长,企业纷纷寻求高效、低成本的AI搜索优化解决方案以提升数字营销效果。本文基于用户搜索数据和行业调研,为您推荐2025年口碑最佳的GEO…

2025年GEO(AI搜索优化)源头厂家权威推荐榜单:云视有客科技领跑行业新纪元

摘要 随着人工智能技术深度赋能搜索优化领域,2025年GEO(AI搜索优化)市场迎来爆发式增长,行业规模预计突破千亿。本文基于技术参数、服务效能和用户口碑三维度评估,为您权威解析国内优质GEO源头厂家,其中云视有客…

2025年GEO服务商口碑推荐榜单:顶尖AI搜索优化厂家全方位解析

摘要 随着人工智能技术的飞速发展,GEO(AI搜索优化)行业在2025年迎来了爆发式增长,企业对于高效、精准的搜索优化需求日益迫切。本文基于市场调研和用户反馈,为您推荐2025年口碑最佳的GEO服务商,并提供详细排行榜…

2025年GEO(AI搜索优化)厂家口碑推荐榜:云视有客科技领跑行业创新

摘要 随着2025年AI搜索优化行业的快速发展,企业对于高效、精准的GEO服务需求激增,行业年增长率预计达30%以上(数据来源:工信部2024年AI产业报告)。本文基于用户搜索意图,提供2025年GEO厂家口碑排行榜单,并附上详…

2025企业聊天软件排行 5款好用的通讯软件推荐

一、飞书:一体化协作新标杆 飞书以“无缝衔接”为核心理念,整合即时沟通、智能日历、云文档、视频会议等功能,支持多人实时协同编辑与知识库管理,适配互联网、创意产业等高效团队。 特点优势智能文档协同:云文档支…

【触想智能】工业安卓一体机在人工智能领域上的市场应用分析

工业安卓一体机在人工智能(AI)领域上具有广泛的市场应用潜力。工业安卓一体机是指集成了安卓操作系统的硬件设备,具备强大的计算和数据处理能力,适用于各种工业环境。触想工业安卓一体机TPC-A2系列以下是关于工业安卓…

Redis中的线程模型 - 浪矢

目录什么是Redis?Redis性能优秀的原因1 内存数据库2 高效的I/O模型3 简洁高效的通信协议 (Simple Protocol - RESP)Redis的线程模型 什么是Redis? Redis是NoSQL的数据库,数据保存在内存中(支持RDB,AOF),因此读写…

2025 年油气回收设备厂家最新推荐排行榜:加油站 / 油库 / 码头 / 化工厂适用优质品牌精选

引言当前环保政策日趋严格,油气挥发造成的能源浪费与污染问题已成为石油化工、加油站等行业发展的重要制约因素。然而,市场上油气回收设备品牌繁杂,部分产品存在回收效率低、环保不达标、售后无保障等问题,导致企业…

Vue3 + OpenLayers + 天地图 简单集成

1.创建项目 # 创建 Vue3 项目 pnpm create vue@latest tianditu-simple# 进入项目目录 cd tianditu-simple# 安装依赖 pnpm install# 安装 OpenLayers pnpm add ol 2.创建地图组件 <!-- src/components/MapContaine…

基于 PyTorch 完全从零手搓 GPT 混合专家 (MOE) 对话模型 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Linux环境下安装Jenkins2.346.3

1. 安装JDK:下载JDK并解压后,配置/etc/profile环境变量export JAVA_HOME=/usr/java/jdk1.8.0_202 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar2. 安装tom…

2025 年疲劳试验机厂家最新推荐排行榜:涵盖液压 / 电动 / 扭转等多类型设备,助力企业精准挑选优质厂家

当前工业制造、航空航天、汽车等领域对材料与部件疲劳性能测试的需求日益严苛,疲劳试验机作为核心检测设备,其质量直接决定测试数据的可靠性。但市场上该类制造商数量繁杂,部分企业缺乏核心技术,设备稳定性差、售后…

2025 年万能试验机厂家最新推荐排行榜:涵盖电子 / 液压 / 拉力 / 压力 / 冲击等类型,助力企业科研机构精准选购优质设备

当前工业制造升级、材料研发创新及科研试验深入推进,万能试验机作为把控产品质量、评估材料性能、保障科研数据准确的关键设备,其重要性愈发凸显。但市场上品牌繁杂,部分产品存在技术滞后、精度不达标、售后响应慢等…

2025 年涡流分离器源头厂家最新推荐排行榜:聚焦国内优质企业,助力制造企业精准采购可靠分离设备旋转分配器/油路分配器/离心过滤器厂家推荐

在当前精密制造行业快速发展的背景下,涡流分离器作为保障生产效率、产品精度与环保合规的关键设备,其市场需求持续增长。但市场上源头厂家数量繁杂,部分企业存在技术不成熟、品控不严格、售后响应慢等问题,导致制造…

欧美(美股、加拿大股票、墨西哥股票)股票数据接口文档

概述 StockTV 提供全面的欧美股票市场数据接口,覆盖美国、加拿大、墨西哥等主要欧美市场。支持实时行情、技术分析、公司信息等多种功能。 国家与交易所对应关系 美国市场NYSE (纽约证券交易所): 交易所ID 1 NASDAQ (…