随笔分类 - 数据结构-----LCT
摘要:不想天天写计数题啊!
阅读全文
摘要:感觉这比 PKUSC 的屑题好多了
阅读全文
摘要:星际航道 题目描述 给定一个 \(n\times m\) 的网格图,边有边权,初始边权都是 \(0\),有 \(q\) 次修改,每次修改一条边的边权,问修改后网格图的最小生成树是多少,强制在线。 \(n\times m\leq 10^5,q\leq 2\cdot 10^5\) 解法 重点在于考察网格
阅读全文
摘要:定位系统 题目描述 \(n\) 个城市构成一棵树,现在要求在一些城市中设置监测点,使得每个城市可以通过到监测点的距离区分出来(不同可以知道是到哪个监测点的距离,可以类比为树上的坐标) 给定 \(q\) 次修改,每次断开边 \((u,v)\) 再连上边 \((x,y)\),然后求出最小设置的监测点数目
阅读全文
摘要:货币 题目描述 $n$ 个国家按照顺序排成一行,有 $m$ 次事件,第 $i$ 次事件代表国家 $(u,v)$ 的货币可以流通。 请选择一个连续区间 $[l,r]$,使得按照顺序访问 $[l,r]$ 的国家之后可以搜集所有种类的货币。 $1\leq n\leq 10^5,1\leq m\leq 2\
阅读全文
摘要:一、题目 点此看题 二、解法 思维含量和代码难度都点满了,但是我喜欢写这种码农题(除了插头 \(dp\))😅 问题很简单,就是每次把某个节点编号变为最大的情况下维护出这个删除序列。那么我们考虑这个操作有什么特别的性质,就让小编来带你们看看吧! 无根树问题可以优先考虑定根,本题可以考虑设置编号最大的
阅读全文
摘要:一、题目 点此看题 二、解法 多练练这种大数据结构其实也挺好😕,那些比较难写的东西多写写就熟练了,话说这道题又是我自己想出来的。 题目就是要你判断这些点是否在一个强连通块内,可以转化成判断两点是否在强连通块内。 我们考虑原图的一个生成树,那么添加一条非树边就相当于把树上的一个环缩成一个点。但实际上
阅读全文
摘要:一、题目 点此看题 二、解法 挺开心的,这道题基本上是自己想出来的 \(\tt ovo\) 首先有一个基本的 \(\tt observation\):翻转一条路径的选取情况,可以只改变路径端点的度数奇偶性。所以问题转化成把这些点两两配对使得每对之间都联通,显然它的充要条件是每个连通块大小都为偶数。
阅读全文
摘要:一、题目 点此看题 二、解法 根据样例大胆猜结论:所有边都可以被匹配。 证明考虑归纳法,对于 \(\tt T_1\) 的一个叶子 \(x\),找到它的父亲 \(y\),在第二棵树上找到 \((x,y)\) 路径上连接 \(x\) 的边 \((x,t)\),把边 \((x,y)\) 和边 \((x,t
阅读全文
摘要:一、题目 点此看题 二、解法 可以用拆贡献的方法把最后的最后的答案分解开来,考虑点 \(u\) 的切换次数,如果相邻两个切换点来自同一个子树,那么点 \(u\) 不会产生任何贡献(有贡献也一定在子树内就算过了),如果相邻切换点来自不同子树那么会有 \(1\) 的贡献。注意这个相邻的意思并不是实际相邻
阅读全文
摘要:一、题目 点此看题 三操作是到根的路径哦,不要以为是到子树根的路径。 二、解法 一定要仔细观察题目中的修改有没有什么特殊性质:点 \(x\) 到根节点的路径上所有的点染上一种没有用过的新颜色 我感到了一种神秘的熟悉感,这个东西不是 \(\tt lct\) 的那个 \(\tt access\) 操作吗
阅读全文
摘要:一、题目 点此看题 二、解法 题目的提示已经足够明显了吧,肯定是要写一个 \(\tt link-cut-tree\) 。我们只需要求出总和,再除以方案数就是期望。然后可以算每个点为 \(\tt lca\) 时的贡献。 但是要对子树搞点事情,而子树分为虚子树和实子树(看连接的是什么边),所以两类都要维
阅读全文
摘要:一、题目 点此看题 二、解法 这道题需要离线,我们一个一个加入字符,然后回答右端点相应的询问。那对于不同的左端点怎么办呢?可以暴力一点:尝试 维护出所有左端点的答案,然后直接暴力拿就行了。 首先对于一个本质不同的子串,设他的最后出现位置是 $pos$(指的是 $\tt endpos$ ),那么对于左
阅读全文