10 2019 档案

摘要:设树上有两点x、y,要求他们的lca(最近公共祖先) 1、倍增求LCA: 一句话总结:预处理至同深度。查时先跳到同样高,非同点的话再跳到同一父下。 先预处理出树上每个点的向上2^k的祖先。 再看x、y:先把深度深的倍增跳到和深度浅的一样的深度,判断是否在同一点:是,该点即为lca;不是,就将两点一起 阅读全文
posted @ 2019-10-30 20:04 千叶繁华 阅读(118) 评论(0) 推荐(0) 编辑
摘要:题目传送 感觉这道题秀了我一地的智商。。。 审题没审好,没确定带修改的操作中询问的次数<=1000,且max和min都是事先给好、不变的。想了半天线段树、分块,却忘了最基础的暴力。 写不出题时先写暴力。 先考虑在线的部分的做法: 因为修改的次数多,询问的次数少,而且询问很难在在线的情况下优化了,又发 阅读全文
posted @ 2019-10-30 17:00 千叶繁华 阅读(218) 评论(0) 推荐(0) 编辑
摘要:一道很好的锻炼思维难度的题,如果您能在考场上直接想出来的话,提高组450分以上就没问题了吧。(别像作者一样看了好几篇题解才勉强会) 先提取出题目大意:给定一个长度n<=40000的01串,其中1的个数<=8,有m种操作,每次操作都是把一个该操作对应长度的区间取反,或者说异或上1,求使整个串变为只有0 阅读全文
posted @ 2019-10-30 15:26 千叶繁华 阅读(265) 评论(0) 推荐(0) 编辑
摘要:猪国杀,模拟题的一颗耀眼的明珠,成长大牛、锻炼码力必写题! 模拟题没什么思维难度。只要按部就班地去做就是。模拟简单在这,难也在这。因为题面巨长,条件巨多,忽疏一点都有可能全盘皆输。故推荐考试时碰见了,除非真的闲的没事,否则尽量不要碰。一旦陷入细节混乱的深渊,估计一上午/下午的考试就混过去了。 总结一 阅读全文
posted @ 2019-10-28 20:08 千叶繁华 阅读(431) 评论(0) 推荐(0) 编辑
摘要:题目传送 前置知识:对于同一个图的所有最小生成树,权值相等的边的数量相同。 可以简单证明一下: 我们可以从kruskal的过程考虑。这个算法把所有边按权值大小从小到大排序,然后按顺序看每条边,只要加上这条边后不会形成连通块,就加上。 以上过程其实等价于先将所有权值等于第一条边的边都加进图中,然后一个 阅读全文
posted @ 2019-10-26 11:39 千叶繁华 阅读(313) 评论(0) 推荐(1) 编辑
摘要:发现大部分题解都是O(n^2)的复杂度,这里分享一个O(n)复杂度的方法。 题目传送 首先前60%的情况,图是一棵无根树,只要从1开始DFS,每次贪心走点的编号最小的点就行了。(为什么?因为当走到一个点u时,若不把以它为根的子树的所有点都遍历一遍的话,回溯到u的父亲后,就再也没可能遍历u的没有遍历过 阅读全文
posted @ 2019-10-25 19:54 千叶繁华 阅读(382) 评论(0) 推荐(1) 编辑
摘要:一、前置知识: 强连通分量:有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大(看清是极 阅读全文
posted @ 2019-10-14 21:35 千叶繁华 阅读(145) 评论(0) 推荐(0) 编辑
摘要:一、定义: 卡特兰数是一组满足下面递推关系的数列: 二、变形: 首先,设h(n)为Catalan数的第n+1项,令h(0)=1,h(1)=1,Catalan数满足递推式: h(n)= h(0)*h(n-1)+h(1)*h(n-2) + ... + h(n-1)*h(0) (n>=2) 可化简为1阶递 阅读全文
posted @ 2019-10-14 16:42 千叶繁华 阅读(413) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示