首页 > 其他分享 >2023.4.19 那片段 像对未来留言

2023.4.19 那片段 像对未来留言

时间:2023-04-19 21:34:20浏览次数:36  
标签:片段 19 text 复杂度 时间 啊啊啊 2023.4 考虑 nlogn

加训大数据结构。

「LG8528」[Ynoi2003] 铃原露露

lxl 怎么一题多投,很坏啊!

考虑哪些 \((a_x,a_y)\) 有约束力,一是 \(a_z>a_x\) 且 \(a_z>a_y\), 或者 \(a_z<a_x\) 且 \(a_z<a_y\)。这也就相当于将 \(l\in[L_l,R_l],r\in[L_r,R_r]\) 的二元组 \((l,r)\) 均设为非法。

对于一次询问,我们可以将他先差分,这样就可以对 \(r\) 做扫描线,需要查询区间历史 \(0\) 个数,这是经典线段树标记。

最后发现有用的限制其实不多,在值域上相邻的两个点,它们的约束力才比较强,这样就可以在树上启发式合并求出所有有用的限制。

时间复杂度 \(O(nlog^2n)\)。

「LG8527」[Ynoi2003] 樋口円香

对 \(a\) 序列分块,散块直接暴力加。

整块的话,先枚举 \(\frac{n}{B}\) 块,再跑一个卷积贡献答案。

时间复杂度 \(O(n\sqrt{mlogn})\),感觉有点卡常。

「LG7722」[Ynoi2007] tmpq

\(\text{Poly log}\) 的做法很显然,可惜空间过不去。

那就考虑分块,每次修改块内的信息,再修改 \(O(1)\) 个颜色的整块的答案。

时间复杂度 \(O(n\sqrt n)\)。

「CF1764H」Doremy's Paint 2

这题为什么想了半天没想出来啊啊啊啊啊啊!

倒着扫描 \(t\),认为 \(t\) 时刻为初始状态,维护每个颜色什么时候全部消失。

则 \((l_t,r_t]\) 的值均变为 \(t\),\(l_t\) 的值变成 \((l_t,r_t]\) 的 最大值,珂朵莉树维护即可。

时间复杂度 \(O(nlogn)\)。

「LG8987」[北大集训 2021] 简单数据结构

考虑所有被 \(\text{chkmin}\) 影响过的 \(a_i\),他们是单调的,而其余没被影响过的也很好维护。

现在的问题就是求出每个 \(a_i\) 何时变得单调,可以使用整体二分+凸包解决。

时间复杂度 \(O(nlogn)\)。

「LG8990」[北大集训 2021] 小明的树

这题也没独立想出来,急眼了!!!

考虑题目中的条件本质上是,所有黑点的父亲不为白点,而又由于 \(1\) 号点始终为黑,这又等价于黑点为一个联通块。

考虑到森林的连通块数等于点数减边数,对时间轴建一个线段树就做完了。

时间复杂度 \(O(nlogn)\)。

标签:片段,19,text,复杂度,时间,啊啊啊,2023.4,考虑,nlogn
From: https://www.cnblogs.com/Nesraychan/p/17334697.html

相关文章

  • 2023/04/19代码评审
    1、实体类成员变量一律用private修饰2、尽量多加注释,包括但不限于业务方法、枚举、常量等。3、变量范围校验,可以使用@Range注解,例如@Range(min=1,max=3,message="分类层级不符合规范")4、使用service自带方法查询业务数据时,无需注入deleted字段,因为拦截器已经做了该......
  • 4.19团队
     调用百度智能识别的接口,制作了安卓使用界面,实现了图片的导入和活体识别,但尚且无法完成准确快速的人脸识别。......
  • 2022.4.19编程一小时打卡
    一、问题描述:设计一个类people,有保护数据成员:age(年龄,整型),name(姓名,string),行为成员:两个构造函数(一个默认,另一个有参数);默认析构函数;voidsetValue(intm,stringstr)给age和name赋值;有一个void类型的纯虚函数display()。设计一个学生类student,公有继承类people,有私有成员......
  • 2023-04-19:给定一个非负数组arr 任何两个数差值的绝对值,如果arr中没有,都要加入到arr里
    2023-04-19:给定一个非负数组arr任何两个数差值的绝对值,如果arr中没有,都要加入到arr里然后新的arr继续,任何两个数差值的绝对值,如果arr中没有,都要加入到arr里一直到arr大小固定。请问最终arr长度是多少。1<=arr的长度<=10^50<=arr的数值<=10^5来自国外题目论坛。答......
  • 4.19
    #include<iostream>usingnamespacestd;classPoint{public: voidsetX(intX){ x=X; } intgetX(){ returnx; } voidsetY(intY){ y=Y; } intgetY(){ returny; }private: intx;inty;};classcircle{public: voidsetR(intR){ r=R; } intg......
  • 4-19
    今天是励志学javaweb的第二天 附图如下目前才学到基础的jsp今天的疑问是关于jsp与html后缀代码的区别 是不同的运行方式吗?......
  • 4.19 1.3
    一、问题描述从1990年1月1日开始三天打鱼两天晒网,以后的某一天是打鱼还是晒网?二、分析1、计算1.1到指定天数有几天2、周期为5天,用天数除以53、用余数判断是打鱼还是晒网123都为打鱼,40为晒网先利用循环求出1.1到指定天数有几天,还要考虑闰年情况(闰年二月29天,平年二月28天......
  • 4.19总结
    SQL学习一、1.注释:单行--或者#注释内容(Mysql特有)--注意空格多行注释/*注释*/showdatabases;--查询当前Mysql下有多少个数据库的名称。Mysql数据库的SQL语句不区分大小写,关键字建议使用大写。二、数据库的创建createdatabasesdb1;--创建dropdatabasesdb1......
  • 4.19打卡
    一、问题描述:对N个整数(数据由键盘输入)进行升序排列。二、设计思路:对于N个数因其类型相同,我们可利用数组进行存储。冒泡排序是在两个相邻元素之间进行比较交换的过程将一个无序表变成有序表。冒泡排序的思想:首先,从表头开始往后扫描数组,在扫描过程中逐对比较相邻两个元素的大小。......
  • 2023.1.19每日总结
    <%@pageimport="wangzhan.Pd_zhengce"%><%@pageimport="wangzhan.Thesql"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtm......