09 2020 档案

摘要:应该是九月份最后一篇了,这段时间比较高产,国庆勉强能休2天,不用写国庆作业是我不敢想象的快乐(⊙v⊙),楼下书桌里卷子能有1.5cm,肉眼可见的知识的厚度 回归正题,扫描线和正常线段树的差别就在于我维护的是什么,我怎么维护 扫描线和它的名字一样,一条平行于x轴的直线,从下往上扫过n个矩形,划分成多个 阅读全文
posted @ 2020-09-30 08:47 小又又 阅读(176) 评论(0) 推荐(1)
摘要:AC自动机是建立在KMP算法和Trie树的基础上 一、主要步骤 将所有的模式串构建成一个Trie树 对Trie树上的所有节点求失配指针(即从根节点出发,一个串是另一个串的后缀,画图比较好理解) 利用失配指针对主串进行匹配 代码,附注释,应该会好理解一些: 1 #include <iostream> 阅读全文
posted @ 2020-09-30 07:55 小又又 阅读(191) 评论(0) 推荐(1)
摘要:一个定理:$a$-$root$的异或和^$b$-$root$的异或和=$a$-$b$的异或和 证明:$a$^$a_1$^$a_2$^……$root$^$root$^$b$^$b_1$^$b_2$^…… 因为:$a$^$a$=0 0异或任何数为它本身,所以上述式子就等于$a$^$a_1$^$a_2$^ 阅读全文
posted @ 2020-09-29 17:12 小又又 阅读(187) 评论(0) 推荐(1)
摘要:T3,赶紧写完不然又忘了:$x$到$y$的最短路有两种情况 没有路过$s$到$t$的最短路上的点 路过$s$到$t$的最短路上的点,即$x$,$y$两点到同一条最短路的最近距离 实现: $minn1$,$minn2$表示多条最短路上的一个点$u$到$s$这段区间内所有的点,距离$x$和$y$的最短距 阅读全文
posted @ 2020-09-26 19:38 小又又 阅读(202) 评论(0) 推荐(0)
摘要:想要求货车的最大载重量,根据木桶原理,我们就希望一条路径上的载重量的最小值最大。让一条路径上的载重量的最小值最大,贪心得想,如果我加进去的每条边都是剩余边中最大的那一个,那么在形成完整的通路时,一条路径上的边一定是所有情况中最大的那一种,这个思想很明显就是最大生成树。 LCA找路径求最小值就好了。 阅读全文
posted @ 2020-09-23 10:32 小又又 阅读(221) 评论(0) 推荐(0)
摘要:因为我们一共有三个群体,所以我们可以开三倍的并查集,$1$~$n$的部分表示为A的群体,$n+1$~$2n$的部分表示B的群体,$2n+1$~$3n$的部分表示C的群体 题干给的三种关系,A吃B,B吃C,C吃A 我们可以由二倍并查集,由特殊到一般,由二到三,在二倍并查集中:当A中的x与B中的y合并, 阅读全文
posted @ 2020-09-23 08:39 小又又 阅读(176) 评论(0) 推荐(0)
摘要:1、归并排序逆序对 (1) 归并排序的过程(看到一篇知乎写的特别好,链接) 整个过程大概就是不断把一个区间分成两个区间,直到分成单位区间,两个区间不断有序的合并,知道最后形成一个完整的有序的区间。 (2)归并排序的应用:求逆序对: 改动的地方在于:左右两部分的有序序列合并时,假设i在左边,j在右边, 阅读全文
posted @ 2020-09-22 17:30 小又又 阅读(177) 评论(3) 推荐(1)
摘要:1、[POJ 1330]Nearest Common Ancestors LCA的模版题 因为没有告诉我们谁是根节点但是告诉我们方向了,所以我们在每次建边的时候可以记录一下,节点的父亲,如果一个节点没有父亲,那么他就是根节点。 在倍增找LCA的时候我们首先要知道每个点的深度,bfs就好了dep数组记 阅读全文
posted @ 2020-09-21 12:56 小又又 阅读(484) 评论(0) 推荐(0)
摘要:T1:写了40分挂了,不知道为啥,和mx写的一样,对拍答案一样,就是挂了。 正解:一个数对答案贡献的价值,取决于他在第几个被放进去。曾经拿竞赛题去为难班主任的时候,sy教我多变量变成单变量想,先想一个数a第x次放进A的贡献:$a \times $ $\sum_{i=x+1}^{n \times m+ 阅读全文
posted @ 2020-09-20 18:22 小又又 阅读(304) 评论(2) 推荐(4)
摘要:直接从复习笔记里扒下来了 有学长跟我说状压dp是oier的本能,惊,是我太菜了,不想写了,溜达溜达吃完饭再写吧。 滚回来写博客了,就题讲dp,P1896互不侵犯 状态定义:dp[i][j][k]表示第i行的状态为s[j],一共放了k个国王的方案数 状态转移:如果合法,方案数就相加 如果不考虑每行间的 阅读全文
posted @ 2020-09-18 16:21 小又又 阅读(141) 评论(0) 推荐(0)
摘要:1、exgcd推导: $b$*$x$=1($mod{p}$) $\rightarrow$$b$*$x$+$p$*$y$=1 代码: 1 #include <iostream> 2 #include <algorithm> 3 #include <cstdio> 4 using namespace s 阅读全文
posted @ 2020-09-11 09:34 小又又 阅读(408) 评论(1) 推荐(0)
摘要:又是线段树……应该是近期写的第五道线段树 这道题的难点在于式子推导,虽然我并不会自己推,但是可以证明正确性: 于是就可以维护三个线段树,表示三个式子,直接写线段树就好了,唯一需要注意的地方就是取模,为了避免负数,我们可以写成 也有必要写成(x%mod+mod)%mod,不然输出不正确,最后记得开lo 阅读全文
posted @ 2020-09-01 20:25 小又又 阅读(217) 评论(0) 推荐(0)
摘要:对于这道题,首先要明确,块的积水量取决于什么 1、如果水一直只往一个方向流,块的积水量,等于从它出发,沿该方向的最大高度,因为之前不管有过低,到了最大高度都会被卡住; 2、如果水往两个方向一直流,块的积水量,由1知,每条路径的最大积水量分别为max1,max2,如果两条路径一起考虑呢?应该为min( 阅读全文
posted @ 2020-09-01 20:06 小又又 阅读(184) 评论(0) 推荐(0)