09 2022 档案
摘要:容易观察到一次操作是将 0 移动到一个相邻的节点上,而且操作可逆转。 所以对于不加边的情况方案是唯一的,直接模拟一下看看是不是相等的就好。 对于加一条边来说,我们先将 0 移动到目标位置,观察一下这种状态下他的答案长什么样子。 因为操作是可逆的,所以对于 0 出去再回来的话,他能改变的只
阅读全文
摘要:考虑答案在树上长什么样子。 首先答案肯定是一个独立集,因为两两之间没有交。 对于相邻两个圆,他一定是经过中间一个点来连接的,画个图容易发现中间的这个点连接的所有点都能加入答案。 也就是说答案应该是树上一条形如毛毛虫一样的独立集,就是树上的一条链加上每个点周围的点。 这个就可以用类似最大独立集的 dp
阅读全文
摘要:数据结构好题 首先将询问离线,扫描线扫答案区间的左端点。 设和 l 颜色相同的下一个位置为 x 。 那么对于左端点 ≤l,l≤ 右端点 <x 的询问, l 再往右移动的话一定是不合法的,找到这些询问并且删除即可。 设所有出现位置全部在 (l,x) 外的颜
阅读全文