摘要:
BZOJ 1832 写起来很放松的题。 首先发现三个点在树上一共只有$3$种形态,大概长这样: 这种情况下显然走到三个点的$lca$最优。 这种情况下走到中间那个点最优。 这种情况下走到$2$最优。 有趣的事情来了:我们发现树上的三个点,会有三个$lca$,而当两个$lca$相同时,另外一个$lca 阅读全文
摘要:
BZOJ 1863 lyd口中的夹B递推。 挺妙的解法。 第一个感觉是找到一个最大的相邻的$a_i + a_{i - 1}$就可以了,但是这个想法大概只对了一半,一半的意思是说只有在$n$为偶数的时候才适用,因为只有在偶数的时候,所有数能恰好地被分成两组,两组互不干扰。 奇数的时候就相当于多出了一个 阅读全文
摘要:
这题$n$倍经验…… 考虑差分约束: 我们设$s_i$表示$[-1, i]$这个区间中数字的种类数,那么一个条件的限制相当于$s_{b_i} - s_{a_i - 1} \leq c_i$,那么连边$(a_i - 1, b_i, c_i)$。 再挖掘一些隐含条件:$0 \leq s_i - s_{i 阅读全文
摘要:
完全不会这种类型的$dp$啊…… 考虑回文串一定是可以拆分成(偶数个字母 + 偶数个字母)或者(偶数个字母 + 一个字母 +偶数个字母),两边的偶数个字母其实是完全对称的。因为这道题回文串的长度是给定的$n + m$,所以回文串的类型也是确定的。 发现直接$dp$不好转移,我们可以把走的步数拆成两半 阅读全文