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

20260415

A - 道路

首先,很容易想到一个 \(O(n^2 \times m + n\times m \log n)\) 的做法,可以枚举起点和终点以及那条边,预处理出 \(x,y\) 之间最短路以及最短路方案,就可以直接算。

考虑如何优化。

比如一条从 \(s\)\(t\) 的最短路,假如它能有贡献的充要条件是 \(dis_{s,t}=dis_{s,x}+dis_{y,t}+edgedis_{x,y}\).

这有太多未知数了,不好计算,尝试将它分成两部分。

第一部分是这条边作为终止边,也就是只用考虑,有多少种不同的最短路终止为这条边。

第二部分同理,计算多少种不同的最短路起始为这条边。

计算这两个分别都是 \(O(n\times m)\) 的。

两部分答案相乘并不是最终答案。因为这个只满足两边分别成立,其实不满组整体成立。

所以还需要减去一些不满足 \(dis_{s,t}=dis_{s,y}+dis_{x,t}-edgedis_{x,y}\) 的,好像也不大好做。


回到第一个式子,\(dis_{s,t}=dis_{s,x}+dis_{y,t}+edgedis_{x,y}\)

移项得,\(dis_{s,t}-dis_{s,x}=dis_{y,t}+edgedis_{x,y}\)

假如枚举边 \((x,y)\) 和终点 \(t\) ,只要能在 log 内求出有多少 \(s\) 满足 \(dis_{s,t}-dis_{s,x}=k\) 并算出 \(sum_{s,x}\)(sum 表示最短路方案数)。

看看这个能不能预处理,再移项得 \(dis_{s,t}=k+dis_{s,x}\)

也做不了。


看了题解,可以枚举最短路的起点 \(s\),将能跑出最短路的边使用,建出一个 DAG。接着可以分成两部分,分别表示在这个 DAG 中以 \(s\) 出发,到达 \(x\) 这个点的方案数,和从这个点出发到达任意一个终点的方案数。最后枚举边,将两个端点答案乘起来就可以了。

B - 影魔

枚举 \(c\),计算出 \(c\) 为最大值的最远左端点 \(l\) 和最远右端点 \(r\)

很显然,\(i\)\(j\) 的范围也就确定了,\(i\in [l-1,c-1],j \in [c+1,r+1]\),因为假如过了 \(l-1\)\(r+1\)\(c\) 就不是 \(\max_{i+1}^{j-1} a_i\) 了。

对于第一种 \(p1\) 的情况,也就是 \(c<\min(a_i,a_j)\),这只能出现在 \(i=l-1,j=r+1\) 的时候。

而对于第二种 \(p2\) 的情况,即 \(\min(a_i,a_j)<c<\max(a_i,a_j)\),这个同理,只有可能出现在 \(i=l-1,j\in[c+1,r]\)\(j=r+1,i\in [l,c-1]\) 中。

二维区间修改,很容易想到二维线段树,暴力维护就可以了。

还需要考虑的是没有 \(c\) 的情况,也就是 \(j=i+1\) 时,加上一下 \((r-l)\times p1\) 就可以了。

但是二维线段树会 TLE+MLE,注意到可以离线,直接计算。

C - 带子串包含约束LCS问题

对于要包涵的建 AC 自动机,两个模式串分别建子序列自动机。

dfs(x,y,i,S) 表示匹配两个模式串到 \(x,y\),AC 自动机在点 \(i\),目前的状态为 \(S\) 的最长公共子序列。

记忆化搜索。证不出时间复杂度,\(O(能过)\),好像 zzwdsj 造出到 hack 了?

总结

对于这种字符串的题,假如要包含若干个字符串为其字串,可以建 AC 自动机;而对于类似公共子序列可以分别建子序列自动机,记忆化搜索。

而这道题正是两个相结合。

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

相关文章:

  • 如何评估曲阜久鼎不锈钢酿酒设备厂家,选购时这些要点不能忽略 - 工业品网
  • 云南大叶种的历史渊源:从野生茶树到栽培型品种
  • C++面向对象三大特性之二【继承】——详解 C++ 函数隐藏机制
  • 华为:2026智能光伏十大趋势
  • 瑞之顺机械员工发展空间大吗,深度剖析该机械品牌的人才培养 - myqiye
  • 三分钟解锁B站视频智能文字化:bili2text技术伙伴指南
  • 国内超声波液位计十大品牌排名 - 仪表人小余
  • 靠谱的奢侈品回收服务商分析,在线估价便捷,哪家性价比高 - 工业品牌热点
  • 如何选择靠谱的天猫超市购物卡回收平台?一文解答 - 团团收购物卡回收
  • 【Nginx 0day漏洞应急指南:两种升级策略与实战操作详解】
  • 盘点2026年好用的专业高考补习机构,哪家值得推荐 - mypinpai
  • Git常见使用命令及易踩坑点
  • 权限检查:检查当前进程 UID/GID 是否有读取该文件的权限 (rwx)。
  • 天猫购物券回收不踩坑!京尔回收让闲置变现金! - 购物卡回收找京尔回收
  • 2026年靠谱的冰淇淋加盟、贴牌与代加工厂家推荐,售后完善之选 - 工业设备
  • 联想拯救者工具箱完全掌控指南:免费替代Vantage的终极方案
  • 2026年实力强的软体床企业大揭秘,好用的品牌推荐给你 - 工业品网
  • PHP双写数据的生命周期的庖丁解牛
  • 二手车检测第三方机构哪家最好 - GrowthUME
  • 2篇1章2节:文献检索前期准备的AI 赋能与数据库介绍
  • 2026靠谱的律师事务所推荐,聊聊北京星来律师事务所程晓璐怎么样 - mypinpai
  • 告别IPFS部署痛点:零依赖分布式文件引擎架构解析
  • 如何评估AI搜索技术团队,哪家更靠谱全面剖析 - 工业推荐榜
  • OnmyojiAutoScript:解放双手的阴阳师智能管家,让重复任务一键托管
  • GLM-4-9B-Chat-1M参数详解:90亿稠密网络+1M token原生支持技术拆解
  • 探秘好用的非标定制分割器、精密分割器品牌有哪些 - 工业设备
  • Windows系统清理终极指南:5分钟解决C盘爆满问题
  • 口碑好的AI搜索服务公司探讨,哪家更值得用户信赖 - myqiye
  • 广州大学方班夏令营应急培训【1】
  • github学生认证怎么搞