08 2016 档案
摘要:做的第二道点分治的题目,比较裸,算是模板题吧(感觉比之前那题还简单点。 题目:BZOJ 2152 聪聪可可 题目大意:给出一棵树,求树上两点间长度为3的倍数(0也算)的路径数。 解题思路: 基本和POJ1741一样 2.不过重心,在重心的子树中 情况二可通过分治转化为情况1。 通过dfs求出每个点到
阅读全文
摘要:写的第一道点分治的题目,权当认识点分治了。 点分治,就是对每条过某个点的路径进行考虑,若路径不经过此点,则可以对其子树进行考虑。 具体可以看menci的blog:点分治 来看一道例题:POJ 1741 Tree 题目大意:扔给你一颗有权无根树,求有多少条路径的长度小于k; 解题思路:先找出重心,用一
阅读全文
摘要:Tarjan求强连通分量的流程在这个博客讲的很清楚,再加上我也没理解透,这里就不写了。 缩点:将同一个连通块内的点视为同一个点。 扔一道模板题:codeVS2822爱在心中 第一问很显然就是求点数大于一的连通块的个数,跑一次tarjan; 第二问脑补一下发现,缩点后,若图中有且仅有一个点出度为0且为
阅读全文
摘要:暑假已经过去一大半,对七月的OI学习做一个总结。 七月将复赛知识清单中的前两个等级的知识点过了一次,学过的复习了,没学的也都看过了。但是这些算法并没有完全掌握,题目做得少了,只做了些模板题。七月末将知识点复习了一次并做了记录,以后还是要勤加练习。 七月先是上了七天衔接课,后来又预习高一新课,紧接着又回老家。期间没有真正沉下心来学习OI,对知识点学习的投入度不够,在剩下不多的暑假时间里要多投入精力学...
阅读全文
摘要:Dij:贪心思想的单源最短路,时间复杂度O(n^2)。 Dij算法流程: 堆优Dij:即用堆优化的dij算法,时间复杂度O(nlogn);(但是据说跑起来比spfa快?求神犇解释) 堆优Dij算法流程: q为priority_queue,优先队列记录一个二元组,分别为索引位置和数值; d数组记录源点
阅读全文