随笔分类 - 堆
摘要:显然优先级越高完成的越早,二分答案后用堆模拟就是O(nlog2n)的。考虑去一个log。先固定特殊题的优先级为最低,模拟一遍。这样在特殊题被扔过来到T的这段时间内,如果将特殊题的优先级提高至超过这其中某些时间段所做的题,这些时间就会空出来变为做特殊题。所以从小到大枚举优先级,直到空出来的时间恰好与做
阅读全文
摘要:做前缀异或和,用堆维护一个五元组(x,l,r,p,v),x为区间右端点的值,l~r为区间左端点的范围,p为x在l~r中最大异或和的位置,v为该最大异或和,每次从堆中取出v最大的元素,以p为界将其切成两部分重新扔进堆即可。查询一个值在一个区间中的最大异或和用可持久化trie实现。luogu上T掉了。
阅读全文
摘要:首先一般化的将下水道和塌陷看成一个东西。注意到在从源点出发的所有需要使用某条下水道的最短路径中,该下水道只会被使用一次,该下水道第一个被访问的点相同,且只会在第一个访问的点使用该下水道。这个第一个访问的点显然就是正常dij过程中,该下水道第一个被取出的点。 于是在dij过程中,取出了某个点进行更新后
阅读全文
摘要:考虑乱搞,用矩形框圆放KD-Tree上,如果当前删除的圆和矩形有交就递归下去删。为防止被卡,将坐标系旋转一定角度即可。注意eps稍微设大一点,最好开上long double。
阅读全文
摘要:一个显然的做法是二分答案后转化为查询区间颜色数,可持久化线段树记录每个位置上一个同色位置,离线后set+树状数组套线段树维护。这样是三个log的。 注意到我们要知道的其实只是是否所有颜色都在该区间出现,可以改为查询后缀区间的上一个同色位置中最小的。这样我们就只需要set+线段树就可以维护了,同样二分
阅读全文
摘要:题面描述的相当绕,其实就是如果ai=j,重排后ai要在aj之后。同时每个ai有附属属性wi,要求最大化重排后的Σiwi。 容易发现这事实上构成一张图,即由j向i连边。由于每个点入度为1或0,该图是基环外向树森林,并且如果图中有环显然无解,所以这张图就是个森林。把0也看做一个点后变成一棵树。由于其是基
阅读全文
摘要:考虑固定右端点,使左端点最小。那么按右端点排序后查询前缀这些区间的左端点第k小即可。然而写了一个treap一个线段树都T飞了,感觉惨爆。事实上可以用堆求第k小,维护一个大根堆保证堆中元素不超过k个即可,瞬间就跑的飞快了。
阅读全文
摘要:二分答案后得到每个位置需要被加的次数。考虑贪心。从左到右考虑每个位置,将以该位置为左端点的区间按右端点从大到小加进堆。看该位置还需要被加多少次,如果不需要加了就不管,否则取堆顶区间将其选择,BIT实现区间覆盖。
阅读全文
摘要:对反图跑最短路求出每个点到终点的最短路径,令其为估价函数大力A*,第k次到达某个点即是找到了到达该点的非严格第k短路,因为估价函数总是不大于实际值。bzoj可能需要手写堆。正解是可持久化可并堆,至今是第二次见到这个那当然是不学啦。
阅读全文
摘要:对于每个质数求出其作为最大质因子时最多能有几个质因子,开始时将这些ak1~akmaxk扔进堆。考虑构造方案,使得每次取出最大值后,最大质因子、质因子数均与其相同且恰好比它小的数都在堆里。类似暴搜,对于当前考虑的质因子,可以将其去掉并乘上一个恰好比它小的小的质因子,也可以转而考虑下一个质因子。于是给堆
阅读全文
摘要:注意到k与n同阶,考虑构造一种枚举子集的方式,使得尽量先枚举较小的子集。首先sort一下,用堆维护待选子集。每次取出最小子集,并加入:1.将子集中最大数ai替换为ai+1 2.直接向子集中添加ai+1 这两个子集(若不存在ai+1则不操作)。如此操作k次即可得到第一问的答案。 对于正确性,我们证明当
阅读全文
摘要:dp容易想到,但没法进一步优化了。 考虑贪心,每次选出价值最大的物品。但这显然是不对的因为会影响其他物品的选择。 于是考虑加上反悔操作。每次选出一个物品后,将其相邻两物品删除,再将原物品价值变为相邻两物品价值和-原物品价值。这样如果再次选择该物品就可以达到改为选择相邻两物品的效果。并且最优方案中相邻
阅读全文
摘要:某两个点间的请求只对不在这条路径上的询问有影响。那么容易想到每次修改除该路径上的所有点的答案。对每个点建个两个堆,其中一个用来删除,线段树维护即可。由于一条路径在树剖后的dfs序中是log个区间,所以其补集也是log个区间。 然而由于复杂度是O(nlog3n)的以及蒟蒻自带大常数,在luogu上T了
阅读全文
摘要:容易想到一个费用流做法:将每种蔬菜拆成p种,对应p个过期时间,每一种向可以卖的时间连边,第一次卖的奖励算在最晚过期的一种里。对于天数动态加点。不过这样边数太多了,因为第i天能卖的第i-1天一定能卖,可以改成每一种只向过期时间连边然后第i天向第i-1天连边。这样就有60分了。但费用流没有什么优化空间了
阅读全文