随笔分类 - BZOJ
摘要:这是一篇大概和题解不一样的做法。 首先一个平凡的转化是将我们要操作的这个数看作 ,大于这个数的看作 ,小于的看作 ,则原来的 个数转化成对 种数的操作。 将这个序列两个数看作一组,并每组内分为上下两端。第一组规定小的在底下,大的在上面,其余的组大的在底下,
阅读全文
摘要:题面传送门 神仙题,做了一个下午。 Section 1 首先我们要对这个东西观察出一点性质来。 按照题目中讲的,有递推式,于是展开可以得到$e_n=e_{n-1}+2f_{n-1},f_n=e_{
阅读全文
摘要:题面传送门 感觉很奇怪的dp题/jy 显然要dp,设为到了第个,当前这一位填了,目前状态为,其中表示没有连续个W,表示有连续个W但是没有连续个B,表示有连续个B。 首先来考虑怎么转移$dp_{i,0,0}
阅读全文
摘要:题面传送门 没想到线性基还有很多优越的性质。 首先这个题一看就很线性基。我们考虑沿用[WC2011]最大XOR和路径的套路,将路径的权值种类转化为一条链与若干个任意环的异或。其中环可以用线性基维护。 看到删边不难想到倒序加边,先对边的删除时间跑出一颗最大生成树,然后每条非树边加入只需要找到在这棵生成
阅读全文
摘要:题面传送门 树能套,dp居然也能套/jk 首先我们先来思考LCS一般是怎么做的。 显然是设为第一个串匹配到,第二个匹配到,答案为多少。 我们考虑直接将这个东西压到状态里面。 具体的,设表示不定串匹配到第个时,的状态是,转移是
阅读全文
摘要:题面传送门 首先你先不要管中间距离大于两个人之间最大值的情况,先假设其全部为等于最大值。设这个和为,则这个方案的方案数为。 因为不大,所以我们可以将所有种距离的方案数算出来之后计算答案即可。 关于两个点的最大值容易想到按照权值大小排序,然后一个一
阅读全文
摘要:题面传送门 非常奇妙的dp。 首先我们发现这个东西相当于是最大子段和和最小子段和的绝对值取max。 考虑最大子段和的一种求法:维护前缀的前缀最小值,然后用当前的前缀与其相减得到答案。 而最小子段和也有一种求法:维护前缀的后缀最小值,然后用当前的前缀与其相减得到答案。 因此这个东西的值相当于最大前缀和
阅读全文
摘要:题面传送门 看到黑白染色啪的一下一个网络流很快啊就码上去了。 具体的,连边。然后跑最小割就好了。 但是现在有P的限制。 考虑对于每个点建立一个虚点,连边,同时对于每个满足条件的连边,这样的话
阅读全文
摘要:题面传送门 考试的时候硬干两个小时没肝出来。主要是或的地方没想出来。 我们考虑转化为最小割模型,并且将原图黑白染色。 对于白点,我们从源点向这个点连权值为的边,表示如果这条边断掉,那么要付出A的代价将其选入。 对于黑点,令其连向汇点,同白点。 然后将每个点拆点,之间连权值为的点。并且向四
阅读全文
摘要:题面传送门 首先显然有一个三只log的做法,就是先二分,然后点分找大于这个值的路径,直接爆炸。 考虑有什么更优的方法,我们将点分治的顺序跑出来,然后发现一个点计算答案的区间一定是一段区间。 然后我们像超级钢琴那样就好了。 区间最大值的话如果是线段树是,st表是$O(nlog^
阅读全文
摘要:题面传送门 像个sb一样写了树套树然后又卡空间又卡时间。 首先我们考虑一下没有深度限制怎么做。 考虑把每种颜色都拿出来建一棵斯坦纳树,所以斯坦纳树上的所有点都有这种颜色的一个贡献。 具体的,维护每个点最近的两个点的dfs序然后每个点加一,lca处减一即可。查询只要查dfs序上子树和即可。 现在是考虑
阅读全文