09 2019 档案
摘要:本篇博客只讲思路,总结经验,不适于作为新手零基础学习的材料。 关于负权回路,一般有2种主流算法:spfa与bellman。 spfa判负环: 1、bfs版:即最基础的spfa判负环。有多种判定条件:当一个路径上的节点数大于n时;当某个点的入队次数大于n-1时。最差复杂度O(nm) 2、dfs版:基于
阅读全文
摘要:什么是树链剖分? 对于一(heng)些(duo)在树上对路径维护的题,就算暴力倍增找lca也会TLE。为此,我们以某种规则将一棵树剖分成若干条竖直方向上的链,每次维护时可以一次跳一条链、并借助一些强大的线性数据结构来维护(通常链的数量很少),这样就大大优化了时间复杂度,足以解决很多线性结构搬到树上的
阅读全文
摘要:T1: 发现正方形棋盘,其边长为2k(1<k<10),而且2k(1<k<10)-1能被3整除,就想到了分治(主要还是qbzt的老师讲过)。每次将大棋盘从中间分成4个正方形的小棋盘,根据坏点在第几个棋盘分类处理,最后在棋盘大小分为2的时候就可以结束递归了。 AC代码: 1 #include<iostr
阅读全文