摘要: 需要注意的是要ll就全ll,不然要出事。 struct Flow { ll tot=1,hd[N],ne[M],to[M],lim[M]; void Add(int x,int y,ll z) { ne[++tot]=hd[x];hd[x]=tot;to[tot]=y;lim[tot]=z; ne[ 阅读全文
posted @ 2023-08-13 11:55 Hanghang007 阅读(18) 评论(0) 推荐(0)
摘要: 本文属于抽象文学,读者大概是读不懂的(本来也是给自己写的 SA 真的是个好东西,好呀好东西。 基础定义 $sa$ 数组:后缀排序后排名为 $i$ 的后缀的起始位置下标。 $rk$ 数组:起始下标为 $i$ 的后缀的排名。 $height$ 数组:后缀排序后排名为 $i$ 和 $i-1$ 的最长公共前 阅读全文
posted @ 2023-08-01 21:27 Hanghang007 阅读(45) 评论(0) 推荐(0)
摘要: 我是大鸽子。慢慢更新吧。 CF666E 跑一边后缀数组,转化为区间l,r值域为pl,pr的众数。 由于并不强制在线,考虑莫队。 莫队做完值域分块,支持单点修改区间查询max。 加法是简单的,减法不好做,于是就回滚一下就好了。 #include<bits/stdc++.h> using namespa 阅读全文
posted @ 2023-07-29 15:08 Hanghang007 阅读(42) 评论(0) 推荐(0)
摘要: 别搞忘了! 阅读全文
posted @ 2023-07-28 17:30 Hanghang007 阅读(41) 评论(0) 推荐(1)
摘要: 和巨佬们打Duel CF863E 2000 一开始以为离散化一下线段树随便做做即可,结果Wa on 14人都麻了 后来一想要动态开店询问区间最值,结果没开ll 卡了好久 阅读全文
posted @ 2023-07-06 17:32 Hanghang007 阅读(68) 评论(2) 推荐(1)
摘要: P1502 窗口的星星 自然转化为平面上有若干个矩形,每个矩形都带有一个权值,求在哪个坐标上权值的总和最大。 然后扫描线做掉一个维度,剩下的就是区间加全局最大值 #include<bits/stdc++.h> using namespace std; typedef long long ll; co 阅读全文
posted @ 2023-06-29 23:44 Hanghang007 阅读(23) 评论(0) 推荐(0)
摘要: 复健,好久没写博客了。 函数的概念: 我一开始对 $B$ 的存在感到疑惑,直接用值域来定义不美滋滋?加个 $B$ 在其中岂不是多此一举? 想了很久,终于想通了。值域是函数的难点,王中王级别的东西,如果很快求出或表示了它,那函数就是 trivial 的。 所以历代的数学家们想出了一个方法,讲问题简单化 阅读全文
posted @ 2023-06-29 22:35 Hanghang007 阅读(59) 评论(1) 推荐(0)
摘要: A 题解:显然就拼一下 $a,b$ 然后再把 $c$ 用完,记得判一下 $a=b$ 的特殊情况。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e6+3; void Solve() { 阅读全文
posted @ 2023-03-04 15:25 Hanghang007 阅读(28) 评论(0) 推荐(0)
摘要: 由于本人文笔,理解有限,所有本文大量引用他人的博客,文章。 这段时间学习了一下kdt,发现这个东西很妙妙。 它是干嘛的呢?是一种可以 高效处理 多维空间信息 的数据结构。骗分神器。 特别的,在OI中k一般是2,3,4。当k等于1的时候,可以理解为它就是替罪羊树。 建树 kdt是一个二叉搜索树,每一个 阅读全文
posted @ 2023-02-12 18:25 Hanghang007 阅读(89) 评论(0) 推荐(0)
摘要: 本人郑重承诺,将 OI 作为文化课之外的所有精神 relax 本约定自发布之日起生效。 至中考最后一张卷收取为止,可视情况无限期延长,任意复现。 如果背盟一次,则 FST 一题。 以上。 阅读全文
posted @ 2023-02-11 16:28 Hanghang007 阅读(53) 评论(1) 推荐(2)
摘要: #include<bits/stdc++.h> /*一:【准备工作】*/ #define db double #define ll long long #define Vector Point using namespace std; const db eps=1e-8,Pi=acos(-1.0); 阅读全文
posted @ 2023-02-04 12:54 Hanghang007 阅读(70) 评论(0) 推荐(0)
摘要: A 题解: 枚举每个颜色的头和尾然后最大化另一端 upd:赛时麻烦了,显然答案的一端为头或者尾,枚举另一端即可。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e6+3; ll n,a[ 阅读全文
posted @ 2023-01-30 21:11 Hanghang007 阅读(25) 评论(2) 推荐(1)
摘要: A 题解:倒叙枚举即可。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll N=1e6+3; ll b,k,a[N]; void Solve() { cin>>b>>k;ll s=0,p=1; fo 阅读全文
posted @ 2023-01-29 10:17 Hanghang007 阅读(35) 评论(0) 推荐(0)
摘要: A 题解:$z$ 只会越来越小,成为一开始的 $z$ 的子集,所以 $a_i$ 能取到最大值时就是与一开始的 $z$ 进行一次操作。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll N=1e6+3 阅读全文
posted @ 2023-01-27 22:15 Hanghang007 阅读(33) 评论(0) 推荐(0)
摘要: [USACO22DEC] Bribing Friends G 题意:n个物品,价值ai,体积bi,可以用ci个东西减小一个体积,体积最多为A,有B个东西,最大化价值 n,A,B≤2e3 [USACO22DEC] Mou≤ntains G [USACO22DEC] Strongest Friendsh 阅读全文
posted @ 2022-12-24 17:25 Hanghang007 阅读(41) 评论(0) 推荐(0)