上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页
摘要: 大爷的字符串题 莫队 首先这不是一道字符串题。需要仔细研究题的性质,我们会发现答案即为区间众数的个数,因为我们可以将区间分为众数个递增数列,这样为最优。 所以问题转换为求区间众数个数。使用莫队。 cpp include include include define MAXN 400020 using 阅读全文
posted @ 2019-08-09 18:10 Santiego 阅读(195) 评论(0) 推荐(0) 编辑
摘要: faebdc的烦恼 莫队 "题面" 思路 有点难想的莫队。 首先我们肯定要一个 记录难度 出现的次数,但是我们发现每次删去一个难度后,如果那个难度的个数恰好是当前最多次数,我们就可能要更新一下答案, 而这取决于有多少难度的个数恰好是当前最多次数 ,于是我们再开一个 记录有多少难度的个数为 。 经过上 阅读全文
posted @ 2019-08-08 18:51 Santiego 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 鬼子进村 fhq treap "题面" 观察题目发现可用平衡树做:每次鬼子拆家即从平衡树中加入被拆的节点;每次村民修房子都向平衡树中删除该节点;每次查询时,只需要求出其后驱与前驱,易知 为答案。 使用$\text{fhq treap}$实现平衡树部分 cpp include include defi 阅读全文
posted @ 2019-08-07 23:13 Santiego 阅读(197) 评论(0) 推荐(0) 编辑
摘要: P3979 遥远的国度 树剖 "题面" 需要想一下的树剖题,对于询问三需要处理换跟后的情况。我们以1为树根跑一遍剖分,对于换跟进行分类讨论,算出实际答案。讨论有三种情况: (以1为树根的树上) 跟在询问节点的祖先上:因为不影响,所以直接求子树最小值 跟即询问节点:直接查全树 跟在询问节点子树中:画图 阅读全文
posted @ 2019-08-07 13:48 Santiego 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 莫队总结 离线莫队 离线处理询问,暴力按 一定顺序 处理区间询问, 这样我们可以利用上一次询问得到的信息来处理当前询问 ,大大加快速度。 我们一般先按每块$\sqrt{n}$大小对各询问区间左端点分块编号(其中$n$为总区间大小,$m$为询问次数,注意随机数据时$\frac{n}{\sqrt{m\t 阅读全文
posted @ 2019-07-26 15:01 Santiego 阅读(123) 评论(0) 推荐(0) 编辑
摘要: P2709 小B的询问 莫队 "题面" 只要能想出$O(1)$的方式转移$[l,r]$,莫队就不难了。此题求区间$\sum_{i=1}^kcnt[i]^2$,那我们就$O(1)$更新就好了,先减去原来的贡献,更新 再加上现在的贡献,这样就更新完了。 注意:莫队 小心初始化 ,直接 等可能会炸。 cp 阅读全文
posted @ 2019-07-26 14:41 Santiego 阅读(144) 评论(0) 推荐(0) 编辑
摘要: [HAOI2015]树上操作 树链剖分 "题面" 裸树剖,线段树带 cpp include include define MAXN 100010 define ll long long define sl (x 1; buildt(sl, l, mid); buildt(sr, mid+1, r); 阅读全文
posted @ 2019-07-25 19:12 Santiego 阅读(181) 评论(0) 推荐(0) 编辑
摘要: [ZJOI2008]树的统计 "题面" 裸树剖,一个线段树同时维护 和`max`就好了。~~庆祝半小时1A此题。~~ 另外注意,线段树同时支持「区间修改」和「区间查询」时才需要用到 lazy tag。 cpp include include define MAXN 30003 define sl ( 阅读全文
posted @ 2019-07-25 18:06 Santiego 阅读(203) 评论(0) 推荐(0) 编辑
摘要: CF915E 动态开线段树 "题面" 因为$n\le10^9$,所以动态开点,线段树维护$[1,n]$天非工作日数量。 之前的结构体写法被卡了,只能改成函数传 (虽然也不难) 动态开点好写,但是~~太菜了~~线段树部分写炸了,对 标记理解不深,下放标记时注意不要把本来子区间的信息覆盖了, 下放完标记 阅读全文
posted @ 2019-07-24 22:40 Santiego 阅读(273) 评论(0) 推荐(0) 编辑
摘要: UVA1674 闪电的能量 树剖 "题面" 水。树剖模板 cpp include include include define MAXN 50005 define sl (x 1; buildt(sl, l, mid); buildt(sr, mid+1, r); } void push_down( 阅读全文
posted @ 2019-07-24 17:59 Santiego 阅读(190) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页