complete binary 321e tree
Matrix-Tree 定理
行列式求值 交换矩阵 \(A\) 两行,\(\det(A') = -\det(A)\) 。 将矩阵 \(A\) 的第 \(i\) 行乘 \(k\) 后,\(\det(A') = k\times\det(A)\)。 将矩阵 \(A\) 的第 \(i\) 行乘 \(k\) 后加到第 \(j\) 行上,\ ......
CodeForces 1904F Beautiful Tree
洛谷传送门 CF 传送门 大家好,我是这个。 注意到可以树剖后线段树优化建图跑拓扑排序,但是空间复杂度 \(O(n \log^2 n)\),大概过不了。 注意到我们只会有一个 \(\text{dfn}\) 区间不是一条重链上一段前缀的形式(跨过 \(\text{LCA}\) 的那个区间),于是对这个 ......
Completions - "wait for completion" barrier APIs 【ChatGPT】
https://www.kernel.org/doc/html/v6.6/scheduler/completion.html Completions - "wait for completion" barrier APIs 介绍: 如果您有一个或多个线程必须等待某些内核活动达到某个点或特定状态,完成 ......
The subtleties of proper B+Tree implementation
Ref https://ayende.com/blog/198241-B/the-subtleties-of-proper-b-tree-implementation ......
CF1904E Tree Queries
给定一棵 \(n\) 个节点的树与 \(q\) 次询问,每次询问给出一个 \(x\) 与一个大小为 \(k\) 的点集 \(a\),要求求出在删去了 \(a\) 中的点后从 \(x\) 出发的最长简单路径的长度。每次询问独立。 \(n, q, \sum k \le 2 \times 10^5\)。 ......
AT_cf17_final_j Tree MST 题解
题意:给定一颗 \(n\) 个点的树,点 \(i\) 有权值 \(a_{i}\),边有边权。现在有另外一个完全图,两点之间的边权为树上两点之间的距离加上树上两点的点权,求这张完全图的最小生成树。 首先有一个很显然的暴力,把完全图中每两点之间的边权算出来,然后跑一边最小生成树,时间复杂度 \(O(n^ ......
CodeForces 1902F Trees and XOR Queries Again
洛谷传送门 CF 传送门 如果我们能把 \(x \to y\) 路径上的所有点权插入到线性基,那么可以 \(O(\log V)\) 查询。 但是因为线性基合并只能 \(O(\log^2 V)\)(把一个线性基的所有元素插入到另一个),所以只能倍增做 \(O((n + q) \log n \log^2 ......
[ LeetCode ] 67. Add Binary
题目 Given two binary strings a and b, return their sum as a binary string. 思考 题外话:根据LeetCode premium的说法,这题是no.4最常被Facebook面试问到的题目 这题是二进制相加的问题 什么是二进制 二进 ......
CF1843D Apple Tree 题解
题意: 思路: 树形 $ dp $ : 设 $ cnt_u $ 表示以 $ u $ 为根的子树中叶子节点的数量,那么状态转移方程有: 当 $ u $ 为叶子节点时, $ cnt_u = 1 $ ; 当 $ u $ 不为叶子节点时, $ cnt_u = \sum_{i ∈ Son_u} cnt_{v_ ......
Top Tree 相关理论扯淡
目录前言Top Cluster 分解与 Top Tree从树分块说起簇、簇操作、树的簇表示法基于重量平衡的静态 Top Tree动态 Top Tree簇与 Top Tree 的性质静态 Top Tree 的应用树上信息合并链上修改与查询子树修改与查询维护动态直径例 1:【2023 集训队互测 Rou ......
[ARC164E] Segment-Tree Optimization 题解
题目链接 题目链接 题目解法 一个自认为比较自然的解法 这种一段序列切成两部分的问题首先考虑区间 \(dp\) 令 \(f_{l,r}\) 为 \([l,r]\) 能构成的最小深度,\(g_{l,r}\) 为在 \(f_{l,r}\) 最小的情况下最少的最大深度的点的个数 转移枚举 \(k\) 即可 ......
element tree 优化线条树,添加增删改功能
需求:树状结构,支持操作功能(同级、子级、修改、删除)。 根据需求是否展示复选框和操作功能。 封装linetree.vue组件: 1 <template> 2 <div> 3 <el-tree :data="list" :props=defaultProps :expand-on-click-nod ......
树上启发式合并(dsu on tree)
dsu on Tree(树上启发式合并) 当遇到处理子树询问,并且无修改时。可以考虑树上启发式合并。 算法流程: step1:处理出每个点的 \(siz_x\) 以及重儿子 \(son_x\)。 void dfs(int x, int fa) { siz[x] = 1; int Maxson = 0 ......
(JDK21) java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'
报错:java: java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid ......
F Trees and XOR Queries Again (树链剖分)
看了知乎一位大佬的文章,用st表优化了查询,在st表中维护线性基 让lognN^2的查询 少了个log加了很多优化的方法 但无济于事 但是这样跑了9000ms 依然没法过 优化了一下线性基的查询方式 从枚举位数变成了类似lowbit的__lg(返回最大的1的位置) 不知道具体怎么算的优化 现在时间大 ......
ARC121E Directed Tree
ARC121E Directed Tree 有意思的容斥加树 dp。 思路 \(a_i\) 可以是除去 \(i\) 祖先之外的所有点,考虑 \(a_i\) 的逆排列。 每一个 \(i\) 在正排列里都可以被不是自己子树内的点选择,那么逆排列里 \(i\) 不可以放自己子树内的点(不包括自己)。 现在 ......
[ARC121F] Logical Operations on Tree 题解
题目链接 点击打开链接 题目解法 比较好的题 首先要发现一个性质是:先删 AND 边,再删 OR 边最优 小证一下:分类讨论 AND 边两端的数字情况 \(0 \& 0\) 左右两端虽然可能可以把 \(1\) OR 过来,但这种情况先做 \(\&\),也一定可以 OR 得到 \(1\) \(0 \& ......
【题解】CodeForces 1902F Trees and XOR Queries Again
传送门:https://codeforces.com/contest/1902/problem/F 数据结构题,这里讲两种思路。 $ST$ 表思路: 判定“从若干个数中能否取出其中一些,使得异或和为 $x$”的问题,第一时间想到线性基,本题要做的显然就是快速求出询问路径上所有数的线性基。两组数的线性 ......
VBF(Versatile Binary Format)格式简介
一、综述 VBF(Versatile Binary Format)是主机厂常用的一种固件发行文件格式,包括沃尔沃、福特、吉利等均采用此格式。 二、格式 2.1 格式简介 VBF文件包含三部分:VBF版本段、文件头段、数据段。 VBF版本段:表明当前VBF文件使用的版本号。版本号使用ASCII码存储; ......
CF1809D Binary String Sorting 题解
题意: 思路: 贪心: 单调不降的 $ 01 $ 字符串,一定是一串连续的 $ 0 $ 再加上一串连续的 $ 1 $ 。由于每次操作的代价很大,所以需要在操作次数尽可能少的情况下,尽可能多地使用交换操作。 由于 $ 1 $ 次交换操作,只能减少 $ 1 $ 个逆序对,当存在多个逆序对时,优先通过删除 ......
F. Trees and XOR Queries Again
首先容易想到lca+线性基,\(O(nlognB^2+qlognB^2)\),显然T飞了。 #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<vector> #i ......
【题解】Trees and XOR Queries Again - Codeforces 1902F
https://codeforces.com/contest/1902/problem/F 方法一 可以从树上路径想到轻重链剖分(也可以用其他种类的LCA算法),然后从数的异或表示很容易想到线性基。 然后因为是无修改的,所以可以轻重链剖分+ST表+线性基。具体来说就是: 先进行轻重链剖分。然后把每次 ......
python Thread ThreadPoolExecutor,as_completed
import threading from concurrent.futures import ThreadPoolExecutor,as_completed,wait import time # # def task(name): # print('task: %s'%name) local_da ......
CF1902 A Binary Imbalance 题解
Link CF1902 A Binary Imbalance Question 给出一个 01串,可以在任意一个位置 \(i\) 插入一个字符,如果 \(a_i \ne a_{i+1}\) 插入的字符为 \(0\) 否则插入的字符为 \(1\) 问,是否可以通过任意次操作使得串中 \(0\) 的数量 ......
Top Tree 学习笔记
前言 学了一周才学会... 本来是照着 OI Wiki 上的 SATT 写的,后来看到一半感觉自己懂了然后写了自己理解的版本。看题解后发现这个版本像 AAAT,于是我也不知道它应该叫 AAAT 还是 SATT 了。且叫它 AAAT 吧。 贺一张 lxl 的图: 正文 我理解的 AAAT 是维护子树的 ......
Top Tree 模板(咕)
Sone1 调不动了,所以是 lg P3690。 写着写着就不知道自己写的是 AAAT 还是 SATT 了,反正能用。 #include <iostream> #include <vector> #include <cassert> #define UP(i,s,e) for(auto i=s; i ......
P9665 [ICPC2021 Macao R] Colorful Tree 题解
我永远喜欢数据结构。 题目传送门 给出一棵树,初始只有一个点 \(1\),其颜色为 \(C\)。 有 \(q\) 次操作,分为两种类型: \(0\space x\space c\space d\),记当前树中一共有 \(n\) 个点,新增一个 \(n+1\),其父亲为 \(x\),颜色为 \(c\) ......
[AGC052B] Tree Edges XOR 题解
题目链接 点击打开链接 题目解法 怎么感觉这场 \(B\) 比 \(C\) 思维量更大 考虑一步很妙的操作:把边权变成点权,以达到简化操作的目的 使每条边的边权为两端点的异或和,手画一下可以发现,操作简化成了交换两端点的点权 我们定义 \(d_{1/2,i}\) 定义为在 \(1/2\) 树上,\( ......
el-tree筛选时保留父节点和子节点
watch: { filterText(val) { console.log('val', val); this.$refs.tree.filter(val); } }, methods: // 筛选 filterNode(value, data, node) { if (!value) retur ......