08 2018 档案
摘要:今天我们来讲一下树链剖分 树链剖分是什么? 树链剖分是一种用来维护树上路径信息的在线方法,可以处理在线。 通常通过一种方法,将一棵树剖分成若干条链,然后通过数据结构(线段树,BIT等)去维护。 我们通常所说的树链剖分,基本都是轻重链剖分。 下面我们介绍一下这一种剖分。 学习树链剖分的基础知识有lca
阅读全文
摘要:题目是模板题 "树链剖分" 至于我为什么把树剖当模板题,别问我,我就是这个题出了错。 可以不懂代码什么意思,毕竟不是关于树剖的博客 第一次打,样例过了,交80分,感到莫名其妙,看了半天没看出哪里错了。问一个已经AC的大佬,他跟我说我没开long long 。我看看题面,除了n和m的数据范围,什么都没
阅读全文
摘要:"LG1948" "BZOJ1614" 又遇到最大最小的问题,一看就是二分答案。 二分最短路径只为mid是否可能,之后跑一遍spfa就可以了,(似乎出题人没有卡。。。请勿学习本人) 判断最短路径是否小于等于mid即可。 其他都是基本操作,具体看代码 cpp include using namespa
阅读全文
摘要:这题是状压dp的模板题。 至于状压是什么,自己上网查吧,我在这里不多说。 预处理: 1.$f[i]$表示第$i$行的玉米田可行方案; $ok[i]$表示$i$状态是否是可行解。 判断方法:与$i 1$ &后 均为0,证明脑补一下就可以了。 之后状压dp $dp[i][j]$ 表示枚举到第$i$行,状
阅读全文
摘要:给一个序列,可以任意重排,但是前缀和不能出现给定数字中的数,问有几种排列方式 n using namespace std ; const int p = 1e9+7; const int M = (1
阅读全文

浙公网安备 33010602011771号