首页 > TAG信息列表 > lxl

map

mp.count(x) 判断x为下标的元素是不是在mp中,是就返回1,不是就返回0 mp.erase(x) 删除mp中x为下标的元素 mp.size() 返回mp中元素的个数 mp.clear() 清空mp 【深基17.例6】学籍管理 题目描述 您要设计一个学籍管理系统,最开始学籍数据是空的,然后该系统能够支持下面

[做题笔记] lxl 的数据结构选讲(下)

rrusq 题目描述 点此看题 解法 考虑扫描矩形的右端点,维护所有左端点的答案。 考虑加入一个矩形的影响,可以用染色模型来理解,也就是把在这个矩形内的点染成这个矩形编号的颜色,那么查询只需要找颜色 \(\geq l\) 的点权值和即可。 考虑如何快速染色并且维护点权,一个显然的想法是颜色段

猫树

猫树,出自immortalCO的博客,是“一种高效处理无修改区间或树上询问的数据结构”。 lxl说他自己反对用猫树这个名字,并且认为这个名字就像ODT一样奇怪,可能叫“二区间合并”更好一些

lxl ppt 学习笔记

学习 lxl 的 nb ppt。 不知道能不能看得下去。 动态分块 经典问题1 区间加,区间小于等于 x 个数。 直接分块,维护每个块的 tag,以及这个块排序之后的数组。 散块直接查,整块在块上二分。 Ynoi2017 由乃打扑克 区间加,区间第 \(k\) 小。 其实就是上面这玩意套个二分。 注意可以把散块提

洛谷 P5266 【深基17.例6】学籍管理

题目描述 您要设计一个学籍管理系统,最开始学籍数据是空的,然后该系统能够支持下面的操作(不超过 10^5105 条): 插入与修改,格式1 NAME SCORE:在系统中插入姓名为 NAME(由字母和数字组成不超过 20 个字符的字符串,区分大小写) ,分数为 \texttt{SCORE}SCORE(0<\texttt{SCORE}<2^{31}0<SC

21.11.16模拟 密码安全 BZOJ4750

考虑每个数作为最大值的贡献。 有单调栈求出每个数作为最大值能向左向右扩展的区间,为了避免重复计算,我们让每个区间的最右边的最大值来当最大值计算 对于异或的处理,我们用前缀异或和的异或来表示一个区间的异或 即sum[l...r]=sum[r]^sum[l-1] 异或进行拆位处理,一个区间的异或的第k

poj2917

要求 \[\frac{1}{x} +\frac{1}{y} = \frac{1}{n} \\ \]x,y,n都是正整数,且x<=y的(x,y)解数 \[\begin{align} \frac{1}{x} +\frac{1}{y} &= \frac{1}{n} \\ n(x+y) &=xy \\ \end{align} \]显然x,y均大于n 设 x=n+a,y=n+b \[n^2=ab \]所以答案就是(a,b)的对数 设P为n的约数个数,因

P2168 [NOI2015] 荷马史诗

用哈夫曼树的思想,每次取出k小,合成。注意要加些0使得最后成为满k叉树 const int N=1e5+79; lxl n,k; struct node{ lxl w,d; bool operator <(const node &x)const { if(w!=x.w) return w>x.w;else return d>x.d;} }; std::priority_queue<node> q; int main() { read(n);re

21清北学堂腾飞营游记

7.15 明明是第一天,理论上可以减小力度,可是 lxl 不会这么想。 上午讲的是线段树、树状数组的高难度应用,还有许多 tricks (比如倍增分块、扫描线将二维静态问题转化为一维动态问题,ODT 珂朵莉树等),很多题我只是听明白了思路,可是代码却不会写。这告诉了我代码能力的重要性,在学习的时候,不

义乌DAY4

又是一天,早上t1才拿十分,还不如暴力,自己真菜,正确做法是看出他是个等差数列,然后二分枚举项数解决。由于数据超大,得开unsigned long long才可 T2数学题通过数据知道可行的范围,然后判断。由于比赛时想到的区间没有统整过,于是就用了二分优化,然鹅tle了, T3要找环,然后化环为点,然后进行计算