摘要: 请提醒我补上数据范围 建图原则 先考虑如何暴力建图,再考虑合并优化 如果几个节点的流量来源去向都相同,可以合并 如果 \(u\to v\) 有一条 \(\inf\) 的边,且 \(u\) 是 \(v\) 的唯一流量来源或 \(v\) 是 \(u\) 的唯一去向,则可以合并 POJ 1149 pigs 阅读全文
posted @ 2024-07-13 10:49 exut 阅读(14) 评论(0) 推荐(0)
摘要: 0 面向问题 我们希望有一个数据结构能够解决静态区间求最值、gcd....等问题并且可以在 \(O(nlogn)\) 范围内预处理 \(O(1)\) 查询 1 思路 ST表通常维护一些具有可合并性的东西,就是可以分别计算并且不在乎重复计算,比如最大最小值和最大公约数 (但是区间和之类就不行) 以最大 阅读全文
posted @ 2024-05-12 11:28 exut 阅读(26) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2024-02-23 10:12 exut 阅读(1) 评论(0) 推荐(0)
摘要: P4287 [SHOI2011] 双倍回文 考虑马拉车,但是我不会马拉车 怎么办,考虑PAM 我们在记录一般的fail之外再记录一个trans指针指向小于等于当前节点长度一半的最长回文后缀 然后枚举每个节点 #include<bits/stdc++.h> using namespace std; c 阅读全文
posted @ 2024-02-21 11:18 exut 阅读(17) 评论(0) 推荐(0)
摘要: 如果各位有印象的话我之前的数学大礼包说要写莫反,虽然我退役风险仍然很大但我撅腚写一下 本文的数未经说明都是整数 艾佛森括号 \([A]\) 其中 \(A\) 是一个命题,这个东西表示的是命题 \(A\) 的真假,真为 \(1\),假为 \(0\) 也有一个意思是 \([x]=1(x>0),[x]=0 阅读全文
posted @ 2024-02-21 11:11 exut 阅读(22) 评论(2) 推荐(0)
摘要: 一 给定一个长度为 \(n\) 的正整数序列 \(a\),要求完成 \(q\) 次以下两个操作: 给定 \(l,r\) ,查询 \(\sum\limits_{i=l}^{r} a_{i}^{i-l+1}\) 给定 \(x,k\),将 \(a_x\) 赋值为 \(k\) ,对于操作一,输出对 \(99 阅读全文
posted @ 2024-02-18 17:13 exut 阅读(21) 评论(0) 推荐(0)
摘要: 我都AFO了为什么还要我写题目 年前写的不计入这里 P多少多少默认洛谷 P3313 旅行 题意略,自己不会看吗 考虑对每个信仰开一个线段树,下标为dfs序,然后就是树剖板子 对于这种开一堆动态开点线段树的题目可以存每个线段树的根节点然后就只需要开一个结构体了 code: #include<bits/ 阅读全文
posted @ 2024-02-17 11:14 exut 阅读(25) 评论(1) 推荐(0)
摘要: 看本文文字部分可以少带脑子,但是代码部分仔细看了因为不一定编译了不一定对 动态开点 一般来说线段树的空间开销是比较巨大的,需要 \(4n\) 的空间,一般其实是可以支撑的,但是权值线段树就不一定了。值域级别的代价是支持不了的。 一般在动态开点的前提下只需要支持单点操作 一旦是序列问题还给定初始序列那 阅读全文
posted @ 2024-02-09 21:20 exut 阅读(50) 评论(3) 推荐(0)
摘要: 构造 把一棵无根树(\(n\) 个点)转化为序列: 每次选编号最小叶子,删掉并将它所连的节点加入序列末端,直到只剩两个点停止 性质 一个点编号出现次数加一就是该点度数 显然序列长度为 \(n-2\) purfer变树 集合 \(A\) 表示点集 选出purfer序列首位并删,在 \(A\) 选出编号 阅读全文
posted @ 2024-02-04 10:25 exut 阅读(67) 评论(0) 推荐(0)
摘要: 本文包括: 轻重链剖分(done) 线段树合并(done) to be upd: 长链剖分 DSU on tree(树上启发式合并) 点分治 边分治 LCT 有待更新 本文非例题代码大多未经过编译,谨慎使用 本文本来只有重剖长剖dsu,但是发现不会写,另外几个甚至更简单就带歪了.jpg part1 阅读全文
posted @ 2024-01-28 15:52 exut 阅读(46) 评论(3) 推荐(0)
Title