会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
haiyinliqi
博客园
首页
新随笔
联系
订阅
管理
2026年7月12日
Luogu P3806 【模板】点分治
摘要: 前言: 本文简述点分治。 约定: 本文除标程外,均只讨论一次询问。 用一般dfs解决这个问题: 我们可以先预处理出所有可能的距离,则可以\(O(1)\)查询。 可以对每个节点\(i\)维护一个\(fd\)数组,表示以\(i\)为根的子树中,以\(i\)为端点的链的长度有哪些值能取到,最终时间复杂度为
阅读全文
posted @ 2026-07-12 09:55 海因里奇
阅读(4)
评论(0)
推荐(0)
2026年7月11日
关于树的各种东西
摘要: 树的直径: 定义: 对于一颗树,称其上的最长链为直径。 求法: 考虑将链分为经过\(root\)和不经过\(root\)两种,只需对于每个节点\(i\),求出其子树内以\(i\)为端点的最长链\(L_1\)和不与\(L_1\)相交且以\(i\)为端点的最长链\(L_2\),若\(|L_1|+|L_2
阅读全文
posted @ 2026-07-11 10:07 海因里奇
阅读(6)
评论(0)
推荐(0)
2026年7月8日
Day3T1
摘要: 记法与约定: 记\(w_i\)为第i条边的权值。 若\(T\)是一颗树,则\(i\in T\)表示\(i\)为一条树边。 思路: 考虑如何化简\(\max_T \min_x\sum_{i\in T}|w_i-x|\)。 先考虑\(n\)为奇数的情况。 记一个生成树\(T\)的得分\(f(T)=\ma
阅读全文
posted @ 2026-07-08 20:08 海因里奇
阅读(3)
评论(0)
推荐(0)
2026年7月7日
Luogu P2619 [国家集训队] Tree I
摘要: 前言: 本文简述WQS二分。 记法与约定: 记\(W\)为所有白边组成的集合, 记\(w_i\)为边\(i\)的权值, 记\(need\)为期望选取的白边个数。 简述: 发现若没有颜色限制,则题目变为最小生成树,容易求解。 于是想到可以通过一些手段改变最小生成树以达到目的。 简单地,只需\(\for
阅读全文
posted @ 2026-07-07 20:42 海因里奇
阅读(4)
评论(0)
推荐(0)
2026年7月6日
Luogu P3369 【模板】普通平衡树
摘要: 前言: 本文用来简述范浩强树,模板代码即本题正解。 简介: 范浩强树就是一个没有旋转操作的Treap,它使用分裂和合并来维护Treap性质。 这不仅使得它写起来更加方便并且简洁易懂,而且可以更方便的进行打标记、持久化等操作。 记法与约定: \(root\)表示当前讨论的子树的根, \(lson_i\
阅读全文
posted @ 2026-07-06 18:57 海因里奇
阅读(3)
评论(0)
推荐(0)
2026年7月5日
Day6T1
摘要: 容易想到一个dp: 记\(dp_{i,j,0}\)表示考虑到第\(i\)个数,其值为\(j\),正处于平地。 记\(dp_{i,j,1}\)表示考虑到第\(i\)个数,其值为\(j\),正处于上坡的中间(即不能再上升了)。 记\(dp_{i,j,2}\)表示考虑到第\(i\)个数,其值为\(j\),
阅读全文
posted @ 2026-07-05 10:31 海因里奇
阅读(3)
评论(0)
推荐(0)
Day5T1
摘要: 考虑枚举立方体的4个顶点分别填什么,预处理出每个顶点影响的其它三个顶点共有多少种填法。 #include<bits/stdc++.h> using namespace std; using ll = long long; const int MOD = 998244353; const int N
阅读全文
posted @ 2026-07-05 09:58 海因里奇
阅读(3)
评论(0)
推荐(0)
Day8T3
摘要: 充分发扬人类智慧,发现可以使用如下方式构造: 实际上这就是题解了。 #include"plus.h" #include<bits/stdc++.h> using namespace std; void sol(int n){ if(n==3){ Report(1,2,3); } else if(n=
阅读全文
posted @ 2026-07-05 09:55 海因里奇
阅读(2)
评论(0)
推荐(0)
2026年6月23日
Day7T1
摘要: 注意到一个性质: 只需要正着操作一遍再反着操作一遍就一定可以。 证明: 使用数学归纳,假设长度小于n的序列均满足该性质,则分类讨论\(s\),\(t\)的第一二个字符: 1. \(s=R...\) \(t=R...\) 容易发现只需操作后\(n-1\)个字符,满足。 2. \(s=RG...\) \
阅读全文
posted @ 2026-06-23 19:47 海因里奇
阅读(4)
评论(0)
推荐(0)
2026年6月18日
Day2T1
摘要: 因为我不会正解,所以绞尽脑汁想到了一个乱搞的做法 首先证明一个小引理: 对于一个随机的长度为n序列,其不同前缀max的个数是O(logn)级别的。 考虑如果第i个位置是前缀最大值。把前i-1个数当作挡板,就把取值范围分成了i份。 那么它比前面所有数都大的概率显然是1/i(这里的i份不一定是均分,但是
阅读全文
posted @ 2026-06-18 21:44 海因里奇
阅读(3)
评论(0)
推荐(0)
下一页
公告