首页 > 其他分享 >CF1681E Labyrinth Adventures 题解

CF1681E Labyrinth Adventures 题解

时间:2023-08-23 17:35:26浏览次数:44  
标签:CF1681E Labyrinth 题解 复杂度 right dfrac mathcal left

题意

有一个 \(n\times n\) 的方格图,坐标编号类似平面直角坐标系,左下角为 \((1, 1)\)。

这个方格图被分成了 \(n\) 层,左下角 \((1, 1)\) 为第一层,随后每层都向外拓展一圈,如下图就是 \(n=5\) 的时候的情况:

层与层之间有墙隔开,但每层都有两个门,分别分布在该层顶部和右侧,门是双向的。

现在给出这些门的坐标,有 \(m\) 次询问,每次给定两个坐标 \((x_1, y_1)\) 和 \((x_2,y_2)\),请你回答两点之间的最短路。

题解

分块做法。

首先读题可以发现门是一定要走的,考虑利用 \(\text{DP}\) 预处理出门与门之间的最短距离,设 \(f_{i,j,0/1,0/1}\) 表示从顶部 / 右侧门到达第 \(i\) 层后到通过顶部 / 右侧门到达第 \(j\) 层的最优路径长度。该式的转移是平凡的。

考虑利用分块优化,对于每个块块内处理出两两点对之间的 \(f\) 值,对于块块之间按也处理出类似的 \(\text{DP}\) 值。

需要平衡复杂度,设块长为 \(B\),那么每个块内有 \({B}\) 个元素,即 \({B}^2\) 个点对关系。因为共有 \(\dfrac{n}{B}\) 个块,所以这部分的复杂度为 \(\mathcal{O}\left(nB\right)\)。共有 \(\dfrac{n}{B}\) 个块,即 \(\left(\dfrac{n}{B}\right)^2\) 个点对,复杂度为 \(\mathcal{O}\left(\left(\dfrac{n}{B}\right)^2\right)\)。

令 \(nB = \left(\dfrac{n}{B}\right)^2\),得 \(B = n^{\frac{1}{3}}\),总复杂度为 \(\mathcal{O}(n^{\frac{4}{3}})\),可以通过本题。

Code

出于篇幅考虑,代码另行发布。

标签:CF1681E,Labyrinth,题解,复杂度,right,dfrac,mathcal,left
From: https://www.cnblogs.com/User-Unauthorized/p/solution-CF1681E.html

相关文章

  • h5页面开发常见问题解决方案,助你快速排除问题
    h5页面作为目前广告、宣传以及用户交互的重要工具之一。但是在开发的过程中往往会遇到一些问题,比如兼容性、性能、布局等方面的常见问题。下面,广州名锐讯动将介绍一些h5页面开发常见问题并提供解决方案,帮助您快速排除问题。1.兼容性问题当我们在不同设备和浏览器操作时,h5页面可能......
  • 国标GB28181视频平台EasyGBS国标平台无法正常启动的问题解决方案
    EasyGBS国标视频云服务是基于国标GB/T28181协议的视频能力平台,可实现的视频功能包括:实时监控直播、录像、检索与回看、语音对讲、云存储、告警、平台级联等功能。平台部署简单、可拓展性强,支持将接入的视频流进行全终端、全平台分发,分发的视频流包括RTSP、RTMP、FLV、HLS、WebRTC......
  • Spring Boot通过企业邮箱发邮件被Gmail退回的问题解决方法
    这两天给我们开发的Chrome插件:Youtube中文配音增加了账户注册和登录功能,其中有一步是邮箱验证,所以这边会在SpringBoot后台给用户的邮箱发个验证信息。如果发邮件,之前的文章教程里就有,这里就不说了,着重说说这两天发现所有用Gmail注册的用户都被退件的问题。报错现象先来看看具体......
  • 牛客七夕比赛 题解
    标准的算法竞赛题有下面几个,写这篇博客主要是这个M很有意思,一直没绕过来这个弯如果你有更牛逼的构造方法欢迎交流指导。B构造边长为\(n\)的矩阵,使得每个\(2\times2\)的子矩形的权值和的极差最小两个指针L=1,R=\(n^2\)。将网格黑白染色后按照顺序遍历,黑色填\(R\)......
  • LeetCode 算法题解之 26 进制转换 All In One
    LeetCode算法题解之26进制转换AllInOne26进制转换171.ExcelSheetColumnNumber171.Excel工作表列号functiontitleToNumber(columnTitle:string):number{//如何动态生成字典✅26进制//A-Z->1-26conststrs='ABCDEFGHIJKLMNOPQRSTUVWXYZ';......
  • Google Chrome和ChromeDriver版本号不一致问题解决
    1(base)kaka@KakadeMBPbin%/Applications/Google\Chrome.app/Contents/MacOS/Google\Chrome--version2GoogleChrome116.0.5845.963(base)kaka@KakadeMBPbin%chromedriver--version4ChromeDriver114.0.5735.16(7e1ff058633f5b79b1cd7479aca585ba385......
  • 「题解」Codeforces 1063F String Journey
    先reverse一下。不难看出选出的字符串长度为\(1,2,\cdots,k\)一定不劣,仅考虑这种形式的。然后考虑一手dp,设\(f_{i}\)表示最后一个子串是\(i\)为结尾,最长长度是多少。这样转移就是\(f_i\getsf_{j}+1,iff\s[j-f_j+1,j]\text{is}s[i-f_j,i]\text{'ssubstring}\)......
  • 视频集中存储平台EasyCVR视频融合平台接入RTSP设备出现离线情况的问题解决方案
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力,也具备接入AI智能分析的......
  • CF757G 题解
    Lnk。这是一个dfs序+主席树的乱搞做法。首先把树上距离拆开,令\(\operatorname{dis}(u)\)表示\(u\)到根的路径长度:\[\left(\sum_{i=l}^r\operatorname{dis}(p_i)\right)+\left(\sum_{i=l}^r\operatorname{dis}(x)\right)-2\sum_{i=l}^r\operatorname{dis}(\operatorna......
  • [CEOI2011] Matching 题解
    [CEOI2011]Matching题解题外话:看了其他人题解后作为初学$kmp$的我非常蒙,因为对这个算法的核心掌握不太好,不知道怎么维护动态的序列,因此写下此题解共享经验,建议只会打模板的看看。参考资料:https://www.cnblogs.com/fusiwei/p/11944975.html思路引导:看到数据范围,又和真实......