蒟蒻日记_5月

芜湖~开新坑
以后会在这里写下每周做的题以及没做出的题目总结。


05-13

· 【4月月赛】 Div1.D 解密

数学思维题

跪着看题解系列
位运算的题要第一时间想到位数拆开计算,然后要写形式化的柿子更能够得出一个判断的方式。

· 【NOIP2018 普及组】 摆渡车

线性DP

做出了 \(O(mt)\) 的做法,但是没有注意到dp过程中的大量重复值,然后就挂了。
最后是在题解的提示下找出一种不同于题解的单调队列的奇怪方法过掉的。
感觉删除冗余的重复值的dp也是dp优化中的一个很好的方法,显然我还没掌握


05-14

· 【洛谷】P3708 koishi的数学题

数论

翻了一下标签,看到前缀和马上意识到算一下相邻两数差值就好了,仔细分析一下其实就是算一下每个数的因数和,可以整数分块 \(O(n\log n)\) ,但是 \(n=1e6\) 不太稳妥就想了个线性筛的做法 \(O(n)\) 过掉了。一看std是整数分块。

· 【洛谷月赛LGR-109】Div2.A「Wdoi-6」走在夜晚的莲台野

贪心氵题

· 【洛谷月赛LGR-109】Div2.B「Wdoi-6」华胥之梦

贪心氵题

月赛C之前做数竞的时候碰到了一样的问题,重新建个图判环就行了,但是不会写二分图完美匹配,就挂了。我好菜啊。


05-15

· 【SCOI2015】国旗计划

倍增

被老师放在了ST表的拓展题里,但是连老师自己都不觉得不那么像ST表。
这题就是首先破环为链,然后贪心地记录从每个士兵起 \(2^n\) 个士兵至多覆盖的长度,最后对每个士兵倍增查询就彳亍了。


05-16 & 05-17

在被读书报告折磨
咕咕了
nnd读书报告也被咕咕了


05-18

· 【四月月赛】Div1.C 连通块

构造题

考场中爆零,其实是想复杂了,以为会超出长度限制,其实并不会。


05-19

· 【四月月赛】Div1.E 奇妙的序列

构造题

其实是Wilworth定理的应用,但是不怎么用就忘了。
居然还要开long long ,被坑了。

· 【洛谷月赛LGR-108】Div2.D 沈阳大街2

DP题

来沈阳,指定没你好果汁吃
构造DP模型十分的巧妙
不过主要不会的点还是在于不知道要DP
发现还要对有理数取模,不会。

· 【模板】有理数取模

数论板子

没错我为了做上面那道题专门去学了有理数取模。

· 【模板】二元一次不定方程

数论板子

没错我为了学有理数取模专门学了exgcd。


05-20

· 【算进】【NOI2014】起床困难综合征

位运算

这种位运算的题其实基本上就是拆位算,多做点就没什么花样了。

· 各种排序算法

学了桶排,基数排序,计数排序,算是填坑了。

· 【模板】三分法

基础板子

发现自己还不会三分,光速学习。
发现求导在运用中可以用公式

\[f'(x)=\lim_{\Delta x\to0}{\frac{f(x+\Delta x)-f(x)}{\Delta x}} \]

也就是取一个很小的 \(\Delta x\) 来计算二者差值再除以 \(\Delta x\) 来计算 感觉计算机真奇妙

· 【Codeforces】CF1673F Anti-Theft Road Planning

位运算,格雷码

最近做好多位运算的题
简单分析一下,其实就是给每个节点赋值,使得路的总长度,即相邻节点的异或之和最小。
但是没有参加过CSP2019没有学过格雷码相关知识,翻题解配合CSPS-2019学了一下。
这题还有个小技巧是二维格雷码两个维度错开排,可以使得相邻节点的异或之和最小。

· 【NOI1998】免费的馅饼

数据结构优化DP

写出转移式子

\[\begin{cases} t_x>t_i\\ 2t_x-p_x\ge2t_i-p_i\\ 2t_x+p_x\ge2t_i+p_i\\ \end{cases} \]

然后写了个二维BIT,然而 \(n=10^5\) 炸空间了。
遂翻题解,发现自己忽略了后两个柿子可以推出第一个。
转变为两个条件,一个排序掉,一个一维BIT维护,就做完了。
教训是:被排序掉的条件是不定的,要先对转移式观察才能给出最优的转移方式。

· 【5月月赛】Div1.A 中位数练习题

排序水题

· 【5月月赛】Div1.B 吃饱为止

前缀和水题

· 【5月月赛】Div1.C 最差排名

数学

其实是初中竞赛的经典套路,搞个公式玩一玩就出来了。
做除法忘记用double调了好久


05-21

今天上课讲哈希,本来以为会讲树哈希之类的东西,结果只是顺带一提。

· 【例题】字符串查找

滚动哈希板子

· 【例题】叠词

滚动哈希

小trick:对循环节的判断
对字符串 \(S_1S_2\dots S_n\) 判断前 \(i\) 位是否为循环节可以判断子串 \(S_1\dots S_{n-i}\) 是否等于子串 \(S_{i+1}\dots S_n\)

· 【例题】首尾相连

滚动哈希

· 【例题】图书管理

哈希表

· 【例题】门票

哈希表

一个小坑点:vector与链式前向星的取舍
一般来说选择链式前向星,因为vector很可能内存超限
并且冲突率一般不大 cache miss 基本可以忽略


05-22

作业一堆,还有数竞考试,颓了。


05-23

· 【算进】七夕祭

贪心,排序

这题应该早3天做
找不到OJ交就口胡一下。
题目要求的是一个环形的“均分纸牌”
我们设第 \(i\) 个人给第 \(i+1\) 个人分了 \(x_i\)个,而每人距离最终个数差 \(A_n\) 个,那么我们有:

\[\begin{cases} A_1=x_1-x_n\\ A_2=x_2-x_1\\ \dots\\ A_n=x_n-x_{n-1}\\ \end{cases} \]

从而有 \(\forall 1\le i\le n-1,\ x_i=\sum\limits_{j=1}^{i}A_i+x_n\)
\(\forall 1\le i\le n-1,\ S_i=\sum\limits_{j=1}^{i}A_i,S_n=0\)
我们要最小化 \(\sum\limits_{i=1}^{n}{|x_i|}=\sum\limits_{i=1}^{n}{|S_i+x_n|}\)
\(S_i\) 排序取中位数即可


05-24

· 【算进】Color a Tree

贪心

一道很好的题
首先贪心是权值最大的点应当紧接着其父节点染色,事实上这个结论对任意子树是成立的。
思想是合并树上的点,权值则根据比较条件是合并的点的权值的平均值,注意不能对半分,因为最终算总花费的时候合并出来的一个点不是作为点单独出现的。
然后合并的时候一个好的想法是用并查集,这是我看题解才意识到的。


05-25

· 【算进】最近平面点对

分治,计算几何

蛮经典的一道题,按 \(x\) 轴坐标划分,分治求左右两侧的最小距离,然后可以根据这个距离剪枝进行枚举。
里面有一个很妙的想法就是任何一个点都是至多和 \(6\) 个点 \(y\) 轴上与其距离小于左右两边的最小距离,于是就可以做到 \(O(n\log^2{n})\) ,如果分治的时候顺带做一个归并排序还可以做到 \(O(n\log{n})\)

· 【Codeforces】CF1673E Power or XOR?

位运算,数学

拆位算贡献,然后就是数学问题。
用到了Kummer定理和位运算来计算组合数是否有2的因子。
然后记得记忆化一下就做完了。

以及看到大佬回我帖吓一跳(
image


05-26

· 【算进】【HAOI2008】糖果传递

贪心,排序

是七夕祭的简化版。(准确说七夕祭是这题的增强版)

· 【算进】Task

贪心,STLmultiset

贪心和之前一道月赛题类似,用STLmultiset维护即可。

· 【5月月赛】Div1.C 最差排名

数学

就是说我是个傻逼
做完后说忘记用double,
然后double炸 精 度 了


05-27

· 【算进】【NOIP2016提高组】蚯蚓

队列,数学

十分精彩的一题,利用单调性做到线性复杂度。
题解中的单调性我不认为在不打表的情况下能看出来
这种对单调性的观察是我学不会的

· 【5月月赛】Div1.D 构造树

二分,树形结构,贪心

和2012年的疫情控制十分的像,
都是二分然后跑一个判断,
而且都需要把根节点分开算。
然后我就傻逼了以为可以用骚操作不用分开算


05-28

· 【综合练习】旋转方块

· 【综合练习】最大平方数

主要是注意别被卡精度,可以加点扰动来算。

· 【综合练习】小明的雕像

排序,前缀和

· 【综合练习】最小数字和

同余最短路

今天唯一一道有难度的问题。
一个很巧妙的建图。
首先对一个数 \(x\) 可以这样连边:
\(x\to x+1\) 边权为 \(1\)
\(x\to 10x\) 边权为 \(0\)
于是 \(x\) 的数字和就是 \(0\)\(x\) 的最短路,这样就跳出了“十进制”的限制。
然而这样这个图就是无限的了,无法很好地求解。

我们来观察问题:我们要求的是 \(K\) 的倍数的最小数字和,那么我们实际上可以将所有的 \(K\) 的倍数压缩为 \(1\) 个点。
类似地,我们可以将所有的点压缩为 \(K\) 个点 \(x_0,x_1\dots,x_{K-1}\) ,其中点 \(x_i\)代表的是集合

\[\left\{x\mid x\equiv i \left(mod\ K\right) \right\} \]

这样问题就转化为一个01最短路问题,BFS求解即可。


05-29

· 【洛谷月赛LGR-109】Div2.C 「Wdoi-6」最澄澈的空与海

图论,拓扑排序

一个有趣的结论题。
结论:一个图没有多个完美匹配当且仅当其有点度数为1
然后拓扑排序依次删点就彳亍了。

今天还学了KMP算法和SA的模板,明天有时间就打打看。
最近期末了,刷题要慢好多了。
反正本来就很龟速

欧对了今天SH省队出炉了,果然省选被疫情杀死了。
我校水平最高一人差一名进省队,被女生名额挤下去了。
但凡SH有学校杀
但凡没有女生A类名额

初中同学 \(\color{black}{x}\color{red}{iaoyaowudi}\) 成了A队队长,我只能%%%


05-30

· 【洛谷】皇后游戏

贪心

这题在我的数学作业中出现了(?
不过即使想到了 \(\min(a_i,b_{i+1})<\min(a_{i+1},b_i)\) 也并不很容易做,因为这个柿子不满足传递性。
我到底什么时候才能学会构造啊啊啊
还有就是sort中的cmp一定要满足非自反性,否则就会RE/TLE。


05-31

· 【模板】KMP

字符串匹配板子

· 【模板】后缀排序

SA板子

瞎几把学了一下。不知道有啥用
写了倍增法和hash的二分判断法。
居然放 \(O(n\log^2n)\) 过了(?

今天还学习了一下对拍,把倍增法求SA的程序debug了一下。


总结

五月就这么过去了。总体来讲这个月的效率尚可,但是显然让我的文化课收到了重挫 但是还是存在时间管理的问题,很多时间都被浪费在了一些无谓的东西上,比如去刷短视频一样随机跳题。同时文化课作业的完成也经常出现过于缓慢的情况。
总之,下个月就要期末考试了,估计会停掉两周的练习,然后再狂肝两周
希望能够在6个月后拿到自己满意的成绩吧。

posted @ 2022-05-13 15:19  思考人生中…  阅读(58)  评论(0编辑  收藏  举报