长存不灭的过去,逐渐消失的未来。|

xixike

园龄:5年粉丝:40关注:20

随笔分类 -  OJ——洛谷

P4390 [BOI2007]Mokia 摩基亚 题解
摘要:Description Luogu传送门 Solution CDQ分治板题 由于找一个矩形并不好处理,利用类似于二维前缀和的思想,把一个矩形拆成从 (1,1) 开始的 4 个矩形。 具体是哪 4 个从 (1,1) 开始的矩形自己手推一下吧,懒得打了。 考虑什么样的
62
1
0
P3103 [USACO14FEB]Airplane Boarding G 题解
摘要:Description Luogu传送门 Solution 偶然发现这道题所以来做做。 刚开始看完题的时候感觉这只能暴力模拟…… 于是不要脸的看了一眼题解之后,我们可以用一些表达式来表示每头奶牛到达它应该到的位置的时间,从而计算出总共时间。 具体来说,第 n 头牛到达其位置所
146
0
1
洛谷 P1903 [国家集训队]数颜色 / 维护队列 题解
摘要:Description Luogu传送门 Solution 带修莫队板子题。 就是再多开一维时间轴,把每次修改修改前的颜色和修改后的颜色都记录下来。 离线处理。 枚举操作时,类似于普通的莫队,while(操作时间) 看看是该插入还是删除,然后直接修改就完了。 贴下代码吧,直接看代码比
59
0
0
P2048 [NOI2010] 超级钢琴 题解
摘要:Description Luogu传送门 Solution 早就想做这道 P2048 了,但是之前太菜了,不会 QwQ RMQ + 前缀和 + 堆 显然要做一个前缀和,但是做完前缀和之后暴力枚举区间显然是不行的。 考虑一下我们到底要计算什么: 对于一个点 u,我们要计算 \(
68
0
0
P5283 [十二省联考 2019] 异或粽子 题解
摘要:Description Luogu传送门 Solution 01trie + 堆 考虑对原数组做个前缀异或和,然后原问题就变成了找 k 对不都相同的点对,使它们异或起来的和最大。 显然我们要找出前 k 大的点对 (l,r),但是 l 要小于 \(r\
61
0
0
P2468 [SDOI2010]粟粟的书架 题解
摘要:Description Luogu传送门 Solution 观察到数据范围: 对于 50% 的数据,满足 R,C200 另有 50% 的数据,满足 R=1,C5×105 …… 明显要进行数据分治了。。 Subtask_
30
0
0
『学习笔记』可持久化线段树(主席树)
摘要:主席树的最基础的操作就是查询历史版本区间第 k 大,带修。 这个问题的基础解决思路:对于每次修改都建一棵权值线段树,显然空间开不下。 这时可持久化线段树的思路就应运而生了。 主要思想: 不难发现,每次修改只会有一条链上的值发生改变,所以我们不需要建出整棵新树,只需要把新建那条链上的点即可。
34
0
0
P5055 【模板】可持久化文艺平衡树 题解
摘要:Description Luogu传送门 Solution 顾名思义,我们要实现的就是可持久化文艺平衡树,也就是带修的文艺平衡树。 前置知识:文艺平衡树,可持久化平衡树 对于每次修改,我们要新建出被修改的那棵子树,所有的修改及查询操作全都是在要求的版本中进行。 修改之后建出新的版本。 我写的时候直接
64
2
0
P2633 Count on a tree 题解
摘要:Descirption Luogu传送门 Solution 主席树 + LCA + 树上差分 看到 查询第 k 小的点权,自然想到主席树。 那么这道题就是在一棵树上维护一个主席树。 考虑一个数列上的主席树是如何建的,转换到一棵树上应该不难吧( 再来看两个点间的区间第 k 小如何找。
25
0
0
P4036 [JSOI2008]火星人 题解
摘要:Description Luogu传送门 Solution 考虑使用平衡树维护 hash 值。 一个点的 sum 值表示这个点所在子树的 hash 值,那么如何更新呢? 应该还是比较简单的吧,就是: \[ 左子树_{sum} \times (右子树_{siz} + 1) + 根_{val} \tim
43
0
0
『学习笔记』Splay
摘要:不打算详细写了,强推一波 yyb 神仙的博客 Splay入门解析【保证让你看不懂(滑稽)】 (这篇博客的代码完全是按照 yyb 的博客写的,并有一些补充,包括 pushup 及查询第 k 大的整数等等) 这里列几个注意事项吧: Splay 过程中,如果 x,y 为同一种儿子,那么先
73
0
0
UVA1402 Robotic Sort 题解
摘要:Description Luogu传送门 Solution 题目要求我们找到第 i 的数,其实就维护一下剩下的数中最小值在哪里即可。 我们考虑使用 fhqtreap。 说一下具体实现过程: 找到剩下的点中的最小值(其实就是根)。 输出答案,删去它,合并它的两个儿子。 维护区间翻转标
31
0
0
P4402 [Cerc2007]robotic sort 机械排序 题解
摘要:Description Luogu传送门 Solution 题目要求我们找到第 i 的数,其实就维护一下剩下的数中最小值在哪里即可。 我们考虑使用 fhqtreap。 说一下具体实现过程: 找到剩下的点中的最小值(其实就是根)。 输出答案,删去它,合并它的两个儿子。 维护区间翻转标
64
0
0
P3747 [六省联考 2017] 相逢是问候 题解
摘要:Description Luogu传送门 Solution 不打算详细写了,简单写写做题历程。 一看题,显然要用线段树维护,但是 cai 这东西怎存?? 于是看了一眼标签,发现 欧拉公式 这个东西,于是想到欧拉定理。 再联想到区间开方的操作只有前 n 次有用。发现
67
0
0
『学习笔记』Pollard-Rho 算法 题解
摘要:前言 说是学习笔记,其实窝并没有打算写太多(太麻烦了,而且我的理解还不是特别深,可能也写不清楚),所以打算大概写两句,然后贴个板子。 前置知识 MillerRabin 素性测试。 倍增基础应用。 MillerRabin 素性测试 我们知道有费马小定理: \(a^{p - 1} \
135
0
0
P7453 [THUSCH2017] 大魔法师 题解
摘要:Description Luogu传送门 Solution 标签里就俩东西,没错就是他们了。 观察到 4,5,6 操作中需要用到一个常数 v,所以我们的矩阵得开到 1 * 4,存 (A,B,C,1)。 至于转移的 6 个矩阵这里就不推了,比较基础(不会真的有人来做这道题了连矩阵
178
6
0
P6222 「P6156 简单题」加强版 题解
摘要:Description Luogu传送门 Solution 加强版就只是纯粹的加强版,取模可以省掉,直接自然溢出即可,还是简单讲一讲吧。 首先,我们不难发现,f(x)=μ2(x)。 然后就是一波基础而不失难度的推式子。 \[ \begin{aligned} & \sum\limit
74
0
0
P6156 简单题 题解
摘要:Description 洛谷 P6156 简单题 Solution 题意非常清晰明了。 首先,我们不难发现,f(x)=μ2(x)。 然后就是一波基础而不失难度的推式子。 \[ \begin{aligned} & \sum\limits_{i = 1}^n\sum_{j = 1}^n
94
0
0
P3911 最小公倍数之和 题解
摘要:Description Luogu传送门 SOlution 题意非常清晰明了,下面我们来谈一谈如何求解。 直接求是不太行的,所以我们把输入的属放到一个桶里面,设为 t。 那么我们最终要求的答案就是: \[ \sum_{i=1}^n\sum_{j=1}^n lcm(i,j)\times t[i
55
0
0
dp 做题记录
摘要:持续更新中~(尽量不咕) P1650 田忌赛马 有很明显的贪心思路,用田忌最烂的马去怼齐王最好的马。 由于田忌是有主动权的,所以我们直接让齐王从优到劣出马。 设计 dp 状态: 普通 dpdpi,j 表示齐王的前 i 匹马,对上了田忌的前 j 匹马
69
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起