上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 57 下一页
摘要: "传送门" C /\\/\\/\\/ 题意: 给出一个序列$\{a_i\}$,先要求其满足以下条件: $a_i=a_{i+2}$ 共有两个不同的数 你现在可以修改任意个数,现问最少修改个数为多少。 思路: 很明显奇偶分类。 记录奇数位置、偶数位置的最大值和最大出现次数的情况; 因为要求两个数不相同, 阅读全文
posted @ 2019-09-04 22:14 heyuhhh 阅读(280) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: 给出一颗边权为正数的树,问有多少点对之间的距离小于等于$k$。 思路: 点分治模板题,对于一个子问题,$dfs$出所有的距离之后,排个序可以用双指针,或者直接二分也行,复杂度都为$O(nlogn^2)$。 cpp include using namespace std; type 阅读全文
posted @ 2019-09-03 18:29 heyuhhh 阅读(218) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: 给出一颗树,每条边都有一定的边权。 先问点之间路径和为$3$的倍数的点对有多少。 思路: 点分治模板题。 可以将问题转化为经过一个点$t$的路径和不经过点$t$的路径两种情况,后者可以直接递归处理。 在一个子问题中,$dfs$一遍处理出根结点到其余子树中所有点的距离,然后得到距离 阅读全文
posted @ 2019-09-03 18:23 heyuhhh 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 今年多校有这样一道题: "传送门" 做法如果直接dfs暴力跳fail指针,跳到一个标记了的结点就break,跑得很快,后面有群友说只需要跳一次fail指针即可。 当时没怎么想明白,今天来看又想了一下,发现证明并不难,只需要分几种情况即可,我就直接放图吧: 总结: 在许多的自动机中都存在fail指针, 阅读全文
posted @ 2019-09-03 13:02 heyuhhh 阅读(214) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: 现在需要维护两种操作,一种是插入一条线段,另一种是询问$x=k$时,最上方线段的编号,如有多个线段处于最大值状态,那么就输出编号最小的。 强制在线。 思路: 这就是一个李超树的模板题... 李超树一般就可以用来维护一些跟线段、直线有关的问题,比如询问当$x=x_0$时,所有线段的 阅读全文
posted @ 2019-09-02 22:12 heyuhhh 阅读(315) 评论(0) 推荐(0) 编辑
摘要: "传送门" A. The beautiful values of the palace 题意: 给出一个$n n$的矩阵,并满足$n$为奇数,矩阵中的数从右上角开始往下,类似于蛇形填数那样来填充。 之后会给出$m$个有效数字的坐标,坐标左下角为$(1,1)$,右上角为$(n,n)$,其余数字都为$0 阅读全文
posted @ 2019-09-02 11:22 heyuhhh 阅读(248) 评论(0) 推荐(0) 编辑
摘要: "传送门" A.There Are Two Types Of Burgers 签到。 B.Square Filling 签到 C.Gas Pipeline 每个位置只有“高、低”两种状态,所以直接根据条件来$dp$即可。 Code cpp include define MP make_pair de 阅读全文
posted @ 2019-08-31 22:28 heyuhhh 阅读(212) 评论(0) 推荐(0) 编辑
摘要: "传送门" 题意: 给出$p,q$,现在要你生成一个字符串$s$。 你可以进行两种操作:一种是花费$p$的代价随意在后面添加一个字符,另一种是花费$q$的代价可以随意赋值前面的一个子串。 现在问最小代价是多少。 思路: 考虑$dp$,那么就有转移方程:$dp[i]=min\{dp[i 1]+p,dp 阅读全文
posted @ 2019-08-31 14:20 heyuhhh 阅读(416) 评论(3) 推荐(1) 编辑
摘要: "传送门" 题意: 对给定字符串$s$,求其第$k$小子串,重复串被计入以及不被计入这两种情况都需考虑。 思路: 首先构建后缀自动机,之后就考虑在后缀自动机上$dp$。 我们知道如果要考虑重复串,那么就会与一个结点的$endpos$集合的大小有关,对于一条边$(u,v)$,如果结点$u$的$endp 阅读全文
posted @ 2019-08-31 14:10 heyuhhh 阅读(181) 评论(0) 推荐(0) 编辑
摘要: "传送门" 1445 : 后缀自动机二·重复旋律5 题意: 给出字符串$s$,询问字符串$s$中有多少不同的子串。 思路: 考虑对$s$建后缀自动机,那么$\sum (len[i] len[fa[i]])$即为答案。 还可以考虑$dp$,设$dp[i]$为从$i$出发不同子串的个数,那么$dp[i] 阅读全文
posted @ 2019-08-30 20:12 heyuhhh 阅读(378) 评论(0) 推荐(1) 编辑
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 57 下一页