摘要:
传送门 考试的时候只来得及糊了个$n4$的暴力,~~结果考完发现$n2$比$n^4$还好写~~ 题意就是就是要求把一堆字符串的前后缀拼起来之后在原串中出现了多少次 然而前后缀可以有很多,再枚举组合就炸没了 先考虑$n^2$ 写法: 可以先预处理出所有前后缀,分别扔到map里 枚举原串中的每一个位置作 阅读全文
摘要:
传送门 多明显的斜率式然而我没有看出来 然而不管是我乱搞的思路还是正解的凸包思路都需要一个可持久化栈 考场上想到可持久化单调栈,但不会实现…… 其实单调栈不管是否可持久化都能倍增弹栈 但普通单调栈本来就O(n)的倍增弹栈也没啥用 可持久化单调栈/队列注意要倍增处理 这里涉及求凸包切线 如果是个普通单 阅读全文
摘要:
传送门 这篇题解拖得有点久了…… 这个「在经过的所有点上取最小点权」就很讨厌 暴力的话就直接枚举这个最小点权在哪里取到 于是…… 类似这个题,要求树上路径中权值最小/最大的点/边参与计算,可以考虑将点权/边权排序后维护一个集合,按顺序向集合中加点/边,这样后加的点/边权值一定是当前最大/最小的,方便 阅读全文
摘要:
传送门 第一眼看貌似可以树剖,然而那个绝对值不知怎么维护 求最小连通块我只会$k^2$ 主席树貌似可以用来查询区间内与某个数差的绝对值的最小值? 确实,每次查大于等于该数的最小数和小于等于该数的最大数即可 至于具体实现,实际上可以转化为求一个区间内最左/右边的数 很容易写出一个线段树上$O(nlog 阅读全文
摘要:
传送门 考场上只会$O(2^{nm})$的大力状压…… 其实跟状压的例题几乎一模一样…………但还是没看出来 关键特征:每个按钮向上,下只能影响一层 也就是说一个格子只能被它上面一层/本层/下面一层点亮 而且最终每个格子都要被点亮 直接按层状压就好了,几乎就是例题的样子 至于正解复杂度,有个很显然的上 阅读全文