摘要: 思路 树剖板子 题目中要实现两种操作: 给一个点打上 1 的标记; 找他第一个打上标记 1 的祖先。 考虑第一种操作怎么做,十分简单,直接把一个点的标记修改为 1 就可以,简单明了。 对于第二种操作,可以用树剖将树剖成一条条链,然后开一棵线段树,每次查询区间中编号最大的标记为 1 的点。 真是水题 阅读全文
posted @ 2025-05-13 22:32 GuoSN0410 阅读(1) 评论(0) 推荐(0)
摘要: 思路 对于 \(u, v\) 路径上的最大利润有三种情况: \(u->lca(u,v)\) 上买卖; \(lca(u,v)->v\) 上买卖; 跨过 \(lca(u,v)\) 进行买卖; 我们可以用树上倍增进行维护。设 up 数组维护第一种买卖,down 数组维护第二种买卖,maxx 维护路径最大值 阅读全文
posted @ 2025-05-13 14:39 GuoSN0410 阅读(1) 评论(0) 推荐(0)
摘要: 类型 树上差分,一般是用来解决路径修改,单点查询的问题。一般有两种类型: 对边权进行修改 对点权进行修改 对于第一种类型可以将每个边权转移到其对应的儿子上,进而转化为第二种类型。 每一个点记录的是他的权值与所有儿子权值和的差,即: \[x_u=w_u-\sum w_{son_u} \]最后查询每个点 阅读全文
posted @ 2025-05-13 14:14 GuoSN0410 阅读(1) 评论(0) 推荐(0)
摘要: 思路 首先注意到答案具有单调性,可以二分答案。 考虑 check 函数怎么写。 可以发现一个显然的性质:一个军队的深度越小,他所能控制的点越多。 因此,当总时间确定时,我们可以让每个军队在规定的时间内尽量往上跳,发现这个东西可以用树上倍增维护。 但是,题目有一个坑点:根节点不能放军队,这就使得树上的 阅读全文
posted @ 2025-05-10 11:19 GuoSN0410 阅读(3) 评论(0) 推荐(0)
摘要: 几个概念 dfs 序:dfs 遍历的节点序列(第 \(i\) 次访问几号节点) 欧拉序:与 dfs 序类似,但是返回时也要记录(长度为 \(2n-1\)) 性质:设 dfs 序列为 \(a\),则 \(a_{dfn_i}=i\)。 步骤: dfs 预处理出欧拉序,和第一次以及最后一次在欧拉序上出现的 阅读全文
posted @ 2025-05-08 14:45 GuoSN0410 阅读(5) 评论(0) 推荐(0)
摘要: 思路 正难则反,考虑什么时候无法组成三角形。 我们将 \(a\) 数组递增排序(记录三角形的边权),当 \(a_{i-2}+a_{i-1}\le a_i\) 时无法组成,最小的时候为一个斐波那契数列。 发现 \(f_{46}>10^9\),所以 \(n\ge46\) 时一定是可以组成的,在其余情况下 阅读全文
posted @ 2025-05-06 22:21 GuoSN0410 阅读(4) 评论(0) 推荐(0)
摘要: 定义 莫比乌斯函数 \(\mu(n)\) 的定义: \[\mu(n)=\begin{cases} 1,\ n=1\\ (-1)^r,\ n=p_1p_2...p_r(p_i为互不相同的质数)\\ 0,\ 其他 \end{cases}\]性质 设 \(F(n)=\sum_{d|n}\mu(d)\): 阅读全文
posted @ 2025-02-16 21:53 GuoSN0410 阅读(28) 评论(0) 推荐(0)
摘要: 定义 欧拉函数的形式化定义: \[\phi(n)=\sum_{i=1}^n[gcd(i,n)=1] \]表示 不超过 \(n\) 且与 \(n\) 互质的正整数的个数。 性质 \(n=\sum_{d|n}\phi(d)\) 证明:设有 \(n\) 个分数 \(\frac{1}{n},\frac{2} 阅读全文
posted @ 2025-02-16 21:10 GuoSN0410 阅读(8) 评论(0) 推荐(0)
摘要: 介绍 平衡树是一种特殊的二叉树搜树,他能在被修改后,依靠分裂,合并,等操作使得树能始终保持平衡(每一个节点的两棵子树的大小尽量相等),这里主要讲解 FHQtreap。 操作 FHQtreap 也叫无旋 treap,他的每个节点有两个值 \(val,pri\), 其中 \(pri\) 满足二叉堆的性质 阅读全文
posted @ 2024-12-24 17:29 GuoSN0410 阅读(77) 评论(0) 推荐(0)
摘要: 【学习笔记】拉格朗日插值 介绍 拉格朗日插值是用来求高次多项式的一种方法。我们知道假设已经给定了 \(n\) 个点,那么一定会有一个唯一确定的 \(n-1\) 次的多项式,拉格朗日插值就是用来求这样的多项式的。 实现 给出拉格朗日插值的式子,假设已经给定了 \(n\) 个点,分别为 \(x_i,y_ 阅读全文
posted @ 2024-12-21 09:19 GuoSN0410 阅读(31) 评论(0) 推荐(0)