随笔分类 - 点分治
摘要:暴毙选手又被zo老师D费了 暴力是n^2的都会 有另一个点分的做法,就是看成两条链,然后在后缀树上跑,找到对应原串位置拼起来,是n*(logn+m) 然后就根号分治,树的大小超过阈值就点分,小于就暴力 大家说推出来的阈值是sqrt(m),然而我强行设成3000跑得最快啊QWQ
阅读全文
摘要:就和上一题差不多嗟 波老师说nlogn^2跑的过去,我想着还是优越点写个nlogn吧 用开1000000个vector记录下边权和为d的方案 然后出来一个个匹配就好啦~ 然鹅。。。。 bzoj跑不过去,luogu开O2跑得贼快,CH也过了 ORZ肉老师,不用把全部记录的,就把边权和为d的方案中,属于
阅读全文
摘要:终于不颓了今天 点分。对于无根树上的路径,对于一个点(视作根)来说,要么这条路径是经过当前点,要么是存在于这个点的子树,后者交给子树做,对于前者,处理出树中所有点到达根的距离,以及存在于根的那个孩子的子树。按距离排一遍序,从大到小枚举点,同时指针从小到大枚举和它配对的点,由于枚举点的大小单调递减,所
阅读全文
摘要:临时抱佛脚之点分治(虽然听起来很强但是就是感觉哪就里是有暴点力不啊对) 对于模式字符串,我们先把它延伸到n的长度,正反hash 然后大力点分治,强行求它所管理的的子树的f值 f[i]表示和hash匹配到第i位的串数,至于为什么是二维就不说了:) sf[i]表示当前重心管理的子节点的f之和,用于合并子
阅读全文
摘要:神TM动态点分治。。 然而st表又双叒叕TM挂了 sbyzh
阅读全文