摘要: P3810 【模板】三维偏序(陌上花开) cdq分治+树状数组 三维偏序模板题 前两维用cdq分治,第三维用树状数组进行维护 就像用树状数组搞逆序对那样做 >存权值的出现次数 attention:当两个元素完全相同时要重复计算 阅读全文
posted @ 2018-09-16 22:01 kafuuchino 阅读(241) 评论(0) 推荐(0) 编辑
摘要: P3374 【模板】树状数组 1 cdq分治 刚学了cdq分治(dyf神犇强力安利下),发现可以做这种题,当然是来试水了(逃 cdq好像只能离线的样子 cdq分治(转) 以下是摘录的几句: 在合并的时候,我们只处理左区间的修改,只统计右区间的查询 因为左区间的修改一定可以影响右区间的查询 这就体现出 阅读全文
posted @ 2018-09-16 20:31 kafuuchino 阅读(218) 评论(2) 推荐(1) 编辑
摘要: P4168 [Violet]蒲公英 分块 吸了氧气才过 强制在线区间众数,具体见hzwer的解题报告(右转Baidu) 先把数字离散化 然后对于每个数字开个动态数组存出现的位置 每次对完整块的众数和不完整块的所有数在动态数组中进行查询,答案必定在它们之中 code: 阅读全文
posted @ 2018-09-15 23:06 kafuuchino 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 分块1~9传送门 思想不写(baidu分块第一hzwer巨佬) 仅给出code attention:一定要分清楚位置 i 和 所在块 blo[ i ]!(倒在这好几次QAQ) 分块1:区间加法,单点查值 分块2:区间加法,询问区间内小于某个值的元素个数。 分块3:区间加法,询问区间内小于某个值 xx 阅读全文
posted @ 2018-09-13 22:17 kafuuchino 阅读(204) 评论(0) 推荐(0) 编辑
摘要: P2455 [SDOI2006]线性方程组 (upd 2018.11.08: 这才是真正的高斯消元模板) 找到所消未知数(设为x)系数最大的式子,把它提上来 把这个式子的 x 系数约成1 把这个式子用来把其他式子的x消掉 重复直到只剩一个未知数,然后往回带 阅读全文
posted @ 2018-09-13 13:56 kafuuchino 阅读(278) 评论(0) 推荐(0) 编辑
摘要: LOJ10067 构造完全图 最小生成树 每次找到最小的边,将边两端的块合并 (我之前想的是什么鬼) 阅读全文
posted @ 2018-09-12 20:16 kafuuchino 阅读(309) 评论(0) 推荐(1) 编辑
摘要: LOJ10066 新的开始 prim 典型题。碰到这种情况,只要建一个虚拟节点,和其他的点连边,按题目给权值即可 代码中把n+1当成虚拟节点 懒得写kruskal就用prim了 阅读全文
posted @ 2018-09-12 18:43 kafuuchino 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 堆优化prim 应用:bzoj1601: [Usaco2008 Oct]灌水 阅读全文
posted @ 2018-09-12 17:27 kafuuchino 阅读(705) 评论(0) 推荐(0) 编辑
摘要: P2414 [NOI2011]阿狸的打字机 AC自动机+树状数组 优质题解 < 题目分析 先AC自动机搞出Trie图 然后根据fail指针建一只新树 把树映射(拍扁)到一个序列上,用树状数组加速优化 在新树上处理时间戳,用于树状数组维护 在原Trie树上跑dfs查询答案。 因为Trie下标从0开始, 阅读全文
posted @ 2018-09-12 14:02 kafuuchino 阅读(223) 评论(0) 推荐(0) 编辑
摘要: P2322 [HNOI2006]最短母串问题 AC自动机+bfs 题目要求:在AC自动机建的Trie图上找到一条最短链,包含所有带结尾标记的点 因为n<12,所以我们可以用二进制保存状态:某个带结尾标记的点是否被处理到。 把编号为 i 的结尾标记设为2^(i-1) 然后跑一遍bfs,如果跑到某个点结 阅读全文
posted @ 2018-09-11 10:02 kafuuchino 阅读(203) 评论(0) 推荐(0) 编辑