摘要: 思路:字符串哈希,然后用普通的并查集维护即可。 阅读全文
posted @ 2017-08-17 16:44 skylee03 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 思路: 动态规划。类似于线段覆盖,首先对每个区间的右端点从小到大排好序。对于每个区间$s_i$,状态转移方程为$f_{s_i.r}=\max\limits_{0\leq j\leq s_i.l}\{f_j\}$。对于这个$max$,我们可以用一个树状数组来维护前缀最大值。有$n$组区间,区间范围是$ 阅读全文
posted @ 2017-08-17 14:58 skylee03 阅读(205) 评论(0) 推荐(0) 编辑
摘要: OJ题号: BZOJ1218、洛谷2280 思路: 求出二维前缀和,然后DP。时间复杂度$O(n^2)$。另外用扫描线+线段树可以达到$O(n\log n)$。 阅读全文
posted @ 2017-08-17 13:40 skylee03 阅读(211) 评论(0) 推荐(0) 编辑
摘要: OJ题号: BZOJ1088、洛谷2327 思路: 经过观察可以发现,如果一个格子是否有雷可以通过其右上角的数字、上方两个格子是否有雷确定。因此我们可以假定第一个格子是否有雷的情况,递推求解。如果递推过程中发现一个格子中的地雷数大于一个或者少于零个,则说明这种情况不成立。 阅读全文
posted @ 2017-08-17 13:02 skylee03 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 思路: 基础动规。 阅读全文
posted @ 2017-08-17 10:35 skylee03 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 维护一个由'0'~'9'构成的字符串,支持以下两种操作: 1.将指定区间内的所有字符修改为同一指定字符。 2.询问$x$是否为指定区间内的循环节。 思路: 建立一棵线段树,维护每个子串的哈希值。 实现细节: 1.Lazy-tag需要初始化成$-1$,因为$0$也是字符串中的元素,会混淆。 阅读全文
posted @ 2017-08-17 10:22 skylee03 阅读(108) 评论(0) 推荐(0) 编辑