首页 > TAG信息列表 > 三叉神经

动态树之 Link Cut Tree 学习笔记

LCT 题单做题记录 一、维护链信息 P3203 [HNOI2010]弹飞绵羊:维护一条路径的长度,由于题目大大降低了难度,所以只需要使用 \(access\) 和 \(splay\) 两个操作即可。要学会灵活应用 LCT 中的函数,不要有刻板思维(如改变 \(cut\) 函数的写法)。 P1501 [国家集训队]Tree II:需要维护加标

P4332 [SHOI2014]三叉神经树

要求维护一棵树: 每个点有 \(3\) 个端口,分为输入端和输出端(连向父亲)。输出端的个数 \(\leq 1\)。 如果一个点输入端权值为 \(1\) 的个数 \(\geq 2\),那么这个点的权值为 \(1\),否则为 \(0\)。 支持动态修改叶子节点,修改后询问根节点的权值。 \(1 \leq n \leq 5\times 10^5\),时限 \(

luogu P4332 [SHOI2014]三叉神经树

https://www.luogu.com.cn/problem/P4332 成功复习了LCT 首先发现状态改变的一定是叶子向上的一条路径 我们记录\(sum[u]\)表示\(u\)节点有几个儿子是\(1\),\(val[u]=sum[u]>1\) 这样维护最大值和最小值,每次\(access\)一下然后在\(Splay\)上二分可以做到\(nlog^2n\), 考虑记录下来\(

洛谷 P4332 [SHOI2014]三叉神经树 题解

一、题目: 洛谷原题 二、思路: 这道题怎么说呢?只能说有点意思,让我第一次见识了LCT怎么应用。 首先一个非常明显的性质,就是比如我现在修改了某个叶子结点,记为 \(leaf\),那么因此而状态发生改变的点一定是从 \(leaf\) 向上的连续区间。所以我们自然而然能想到两种数据结构,一种是树链剖

[SHOI2014]三叉神经树

这是一道不那么\(native\)的\(LCT\)题,当然可用树剖做,不过在学\(LCT\),自然拿\(LCT\)做。 先考虑分析一些性质。 Q:暴力我们要怎么做? A:建出树来,从这个节点,一直往上跑,直到对父亲节点没有贡献。 Q:什么时候对父亲节点有贡献呢。 A:当父亲节点只有1个1时,你从0变成了1,当父亲节点只有2

「LOJ #2187」「SHOI2014」三叉神经树

Description Hint \(1\le n, q\le 5\times 10^5\) Solution 当整棵树的某一个叶子结点发生修改时,考虑连带被改变状态的结点分布在那些位置上。 首先,一定在这个叶子结点到根结点的这条链上。其次,改变的结点一定是一段连续的链。 对于“ 改变的结点一定是一段连续的链 ” 的解释:设

[SHOI2014]三叉神经树——LCT

题面:   LOJ#2187 解析:    显然修改一次需要修改一条到根的链, 维护链当然就想到用LCT了   结果就想偏了, 本来想分别维护虚子树信息与整棵子树信息,结果发现很难维护。然后去自学了一发   我们定义一个点的点权为它的儿子节点中选$1$的个数   考虑更改一个点的点权要么对它

[SHOI2014]三叉神经树

Description: 计算神经学作为新兴的交叉学科近些年来一直是学术界的热点。一种叫做SHOI 的神经组织因为其和近日发现的化合物 SHTSC 的密切联系引起了人们的极大关注。 SHOI 组织由若干个 SHOI 细胞构成,SHOI 细胞之间形成严密的树形结构。每个 SHOI 细胞都有且只有一个输出端,被称