首页 > 其他分享 >【21 ZR联赛集训 day18】聚会

【21 ZR联赛集训 day18】聚会

时间:2024-09-27 14:17:16浏览次数:10  
标签:10 le 21 复杂度 sqrt day18 ZR

【21 ZR联赛集训 day18】聚会

给出一个由小的编号连向大的编号的 DAG,有 \(q\) 次询问,每次给出 \(t\) 和若 \(s\) 个点,表示除这些点之外其他点到 \(t\) 的最大距离。问距离最远的那个结点编号。\(1\le n \le 10^5,1\le m \le 2\times 10^5,\sum s\le 10^5\)。

根号分治。

对每个点求出到它距离最远的点是 \(O(n^2)\) 的。可以按照拓扑序 DP,把 \(u\) 转移到所有它能到达的结点,时间复杂度 \(O(n)\)。

鉴于我们每次询问会失去一些点,我们可以记录下每个点离它前 \(\sqrt{n}\) 远的点,预处理时间和空间都是 \(n\sqrt{n}\),还是 DP 做,合并儿子转移。

对于每次询问,分两种情况:

  1. \(s>=\sqrt{n}\):
    这种情况不超过 \(\sqrt{n}\) 次,因此暴力搜一遍就好,一次 \(O(n)\)。
  2. \(s<\sqrt{n}\):
    直接 \(O(\sqrt{n})\) 扫一遍记录的数组即可。

总时间复杂度和空间复杂度是 \(O(n\sqrt{n})\)。

标签:10,le,21,复杂度,sqrt,day18,ZR
From: https://www.cnblogs.com/liyixin0514/p/18435579

相关文章

  • 【21 ZR联赛集训 day18】游戏
    【21ZR联赛集训day18】游戏给定长度为\(n\)的序列\(A,B\),每个数形如\(\frac{2^{p_1}3^{p_2}5^{p_3}7^{p_4}11^{p_5}13^{p_6}}{2^{p_7}3^{p_8}5^{p_9}7^{p_{10}}11^{p_{11}}13^{p_{12}}}\)。可以进行若干次操作,每次操作选定\(i(2\lei\len-1),(a_{i-1},a_i,a_{i+1})\gets......
  • 【2021提高组十连测day7】a
    【2021提高组十连测day7】a题意:求每个点和其他所有点曼哈顿距离的平方之和。形式化地,求\(\sum_{j=1}^{n}(|x_i-x_j|+|y_i-y_j|)^2(1\lei\len)\)。对于每个点,我们把其他点分成四部分:左上、左下、右上、右下。四个部分可以通过旋转整个坐标系来解决。因此这里讲如何处理左上......
  • 【21 ZR联赛集训 day10】跑得比谁都快
    【21ZR联赛集训day10】跑得比谁都快\(O(nq)\)做法显然,不讲。如果我们把所有红绿灯的位置\(mod(g+r)\),放到数据结构里,就可以\(O(\logn)\)的时间内找到第一个红灯的位置。然后我们预处理每个红绿灯红灯结束的时刻开始,走到终点要用的时间\(f_i\),DP倒序求解。对于每个询......
  • 【20zr提高组十连测day10】心
    【20zr提高组十连测day10】心首先不同的操作序列一定在某个时刻使数组内容不同,因此我们只需要统计合法的操作序列数量。一个合法的最终数组形如若干个\(1,M\),而且\(1,M\)之间可能有若干个\(x\),长度为\(n+1\)。造成这个数组的操作序列必须满足所有操作\(1,M\)按顺序排列,......
  • 【20zr提高组十连测day10】信
    【20zr提高组十连测day10】信给定\(n,m\),\(n,m\le10^5\),给定分别长度为\(n-1,m,n,m-1\)的单调不减的序列\(A,B,C,D\),然后形如该图建边:考虑到序列是递增的,对于除最左上角以外的每个点,每个点一定要选和自己相连的一条边才能形成一棵树。那么选择左边或上边一定是更优的,而且......
  • [SWPUCTF 2021 新生赛]easy_md5
    分析一下代码, name不等于password,namd,md5值和password,md5值相等。get传参name,post传参password。$name!=$password&&md5($name)==md5($password)属于MD5绕过中的php==弱类型绕过有两个办法,第一个办法就是importrequests#网站的URLurl="http://node7.a......
  • 【LeetCode Hot 100】21. 合并两个有序链表
    题目描述最简单粗暴的想法是将两个链表的所有元素拿出来放在一个数组中,再将此数组排序,最后生成一个新链表并返回。由于给出的参数本身就是两个排好序的链表,可以进行一次遍历,就能保证元素仍然是有序的:每次比较当前指针指向的两个元素的大小,较小的拿出来作为当前元素并将指针向前移......
  • 易优CMS出现:Allowed memory size of 134217728 bytes exhausted (tried to allocate 2
    当你遇到“Allowedmemorysizeof134217728bytesexhausted(triedtoallocate20480bytes)”的错误时,这意味着PHP的内存限制已经耗尽。这种错误通常发生在处理大量数据或执行复杂计算时。为了解决这个问题,可以采取以下几种方法:方法1:修改 php.ini 文件(推荐)找到 php......
  • 易优CMS登录后台报Allowed memory size of 134217728 bytes ex hausted (tried to alo
    当你在登录后台时遇到“Allowedmemorysizeof134217728bytesexhausted(triedtoallocate20480bytes)”的错误提示时,通常是由于PHP的内存限制不足导致的。以下是一些具体的解决步骤:步骤1:检查PHP配置登录宝塔面板登录宝塔面板。在左侧菜单栏选择“软件商店”。......
  • 题解 QOJ837 / ZROI1287【Giant Penguin】
    PetrozavodskWinter2020.Day3.300iqContest3.ProblemG.GiantPenguinGiantPenguin-Problem-QOJ.ac题目描述有一个\(n\)个点\(m\)条边的连通无向无权图,满足每个节点在至多\(k\)个简单环上(没有重复顶点的环是简单环)。\(q\)次操作支持:1.标记一个点;2.询问......