首页 > 其他分享 >ZR2448 题解

ZR2448 题解

时间:2022-11-21 19:45:51浏览次数:39  
标签:fr min 题解 ZR2448 括号 fl 光标

题意

给定一个长度为 \(n\) 的匹配的括号序列 \(s\)。给出 \(q\) 组询问,每组询问形如:光标从 \(s\) 的第 \(a\) 个字符出发,使用一下三种操作:

  1. 将光标移到左边的字符。
  2. 将光标移到右边的字符。
  3. 将光标移到匹配的括号。

求至少需要多少次操作才能移动到 \(s\) 的第 \(b\) 个字符。

\(n,q \le 4 \times 10^5\)。

题解

这题在考场上想出来了,但是只剩半小时写不出来,挺可惜的。

一种很显然的暴力就是建图跑最短路。观察最短路的形式,可以发现有以下特点。

括号形成森林结构,加个虚点就是树。最短路上光标每次深度最多变化 \(1\)。再加上一些感性的理解,不难发现经过的就是 \(a\) 和 \(b\) 对应括号间的路径上的所有括号,或者仅除去 \(\operatorname{lca}\)。这有些树形 \(\operatorname{dp}\) 的感觉。

树上每个点对应两种状态(因为括号有两边)。分别用 \(fl\) 与 \(fr\) 存。因为有包含关系的两对括号,端点间最短路十分显然,我们可以得到转移式:

\[fl_x=\min_{y \in son_x} fl_y+v_{yl→xl},fr_y+v_{yr→xl}\\ fr_x=\min_{y \in son_x} fl_y+v_{yl→xr},fr_y+v_{yr→xr} \]

发现可以用 \(\operatorname{(min,+)}\) 矩阵优化。于是就做完了,复杂度 \(O(q \log n)\)。常数不算太大。

标签:fr,min,题解,ZR2448,括号,fl,光标
From: https://www.cnblogs.com/FishJokes/p/16912956.html

相关文章

  • [题解] CF1149D Abandoning Roads
    难得自己想出来一道3000分的题,虽然说考试的时候打挂了...首先先对较小的边缩点,然后求连通块内的最短路。显然,连通块内其实想怎么走就怎么走,但不能走较大的边。然后不同......
  • 题解 LGP5380【[THUPC2019]鸭棋】
    postedon2021-06-0113:27:59|under题解|source给一种船新的做法,存棋子的位置而不是棋盘,我们只需要写一个生成棋子能移动到哪些位置的函数就可以了。#include<st......
  • ARC104F Visibility Sequence 题解
    [ARC104F]VisibilitySequence给一个长为\(n\)的数列\(h_{1\dotsn}\),第\(i\)项在\([1,h_i]\)中选一个数,得到数列\(x_{1\dotsn}\)。再构造一个数列\(p_{1\do......
  • AT_arc126_d [ARC126D] Pure Straight 题解
    又来给do_while_true大佬交作业了,所以本篇题解仅仅是对该篇题解进行补充说明的。本篇题解适用于像我这样的小萌新,那篇题解适合大佬食用。Part1:为什么我们要用状压d......
  • K8S kube-scheduler-master CreateContainerError 问题解决及思路
    错误信息1:kubectlgetpods  发现pod状态一直在runing-error-CrashLoopBackOff-循环解决方法:1,查看日志。kubectllogspodsweb-674477549d-zx8gmkubectldescri......
  • Python字符串的encode与decode研究心得乱码问题解决方法(转)
    ​​Python字符串的encode与decode研究心得乱码问题解决方法(转)​​为什么会报错“UnicodeEncodeError:'ascii'codeccan'tencodecharactersinposition0-1:o......
  • ABC278 整合题解
    AA题,送分题。link。思路数据范围很小,其实直接模拟也是可以通过的。不过我们很容易想到\(O(n)\)的算法。对于前\(k\)个数,不输出,其他数正常输出。然后再在末尾......
  • ABC278F 题解
    前言题目传送门!或许更好的阅读体验?博弈论,状压,记忆化搜索。思路看到很小的\(n\),容易联想到状压、搜索。本题就是状压加搜索。设状态\(x\)的每一位表示:如果第\(i\)......
  • [ARC152D] Halftree题解
    很好的一道题,即使是我这种菜鸡也感到心潮澎湃。直觉有余,证明不足。思路有余,推导不足。无论是什么比赛,对拍都是最有效的查错方式。本篇题解里的所有图片采用gra......
  • ABC278D 题解
    前言题目传送门!更好的阅读体验?难度加强版:P1253。思路很容易想到线段树。维护\(cov_i\)表示覆盖的懒标记。单点加与单点查都非常简单。全局覆盖只需要给每一层都打......