10 2019 档案

摘要:题意 给若干个串,求这些串最长公共子串的长度。 "传送门" 思路 后缀自动机求lcs模版题。 Code 阅读全文
posted @ 2019-10-19 22:58 Acerkoo 阅读(151) 评论(0) 推荐(0)
摘要:题意 给定字符串,$q$ 次询问,每次查询字典序第 $k$ 小的子串。 思路 后缀自动机模版题。 Code cpp include using namespace std; const int maxn = 1e5 + 10; const int maxm = maxn 阅读全文
posted @ 2019-10-19 21:10 Acerkoo 阅读(133) 评论(0) 推荐(0)
摘要:题意 kdtree板子题 "传送门" Code cpp include include include include include using namespace std; const long double eps = 1e 14; const int maxn = 2e5+10; int i 阅读全文
posted @ 2019-10-14 21:37 Acerkoo 阅读(114) 评论(0) 推荐(0)
摘要:题意 给出一个字典,每个单词去掉元音字母 之后形成一个新字典。 先给出一个只有辅音组成的串,用原字典中的单词还原该串,若存在多种还原方式,输出还原后元音字母数量最多的那种,若依旧多种,则任意输出。 "传送门" 思路 ac自动机fail树上跑dp的一眼套路题。 总结一下遇到的坑: 1. 多个单词去掉元 阅读全文
posted @ 2019-10-14 11:58 Acerkoo 阅读(523) 评论(0) 推荐(0)
摘要:题意 在一个数组中,求所有本质不同子段的贡献和。 每个子段的贡献为该子段中的最大值。 $n \leq 2e5 , T \leq 1000$ "传送门" 思路 首先子段的贡献是子段中最大值,所以不难转化为求每个最大值对答案的贡献: 设 $nxt[i]$ 代表 $min\{j|i a[i] \}$ , 阅读全文
posted @ 2019-10-11 17:20 Acerkoo 阅读(352) 评论(0) 推荐(1)
摘要:题意 求本质不同子序列的数量。 "传送门" 思路 思路一:$dp[i] = \sum_{j=last[a[i]]}^{i 1} dp[j]$ $dp[i]$ 表示第 i 位数字作为子序列的最后一位的数量。 当$a[i]$ 未出现过时: $dp[i]$ 可从之前所有状态包括空串转移过来,即:$dp[i 阅读全文
posted @ 2019-10-03 22:49 Acerkoo 阅读(798) 评论(0) 推荐(2)
摘要:题意 给定一个只包含小写字母的字符串 S , 请你求出 S 的所有出现次数不为 1 的子串的出现次数乘上该子串长度的最大值。 "传送门" 思路 后缀自动机,parent树上dfs。 code 阅读全文
posted @ 2019-10-03 11:11 Acerkoo 阅读(121) 评论(0) 推荐(0)
摘要:题意 有3个n\ n的矩阵A,B,C,问AB是否等于C。 "传送门" 思路 题目描述很简单,就是用矩阵乘法,但是很明显矩阵乘法的时间复杂度为O(n^3),很明显超时。那怎么改进呢?就是用压缩矩阵的方法 设矩阵R是 1\ n 的矩阵,根据矩阵的性质,若 A \ B \ R = C R,那么A \ B 阅读全文
posted @ 2019-10-02 23:38 Acerkoo 阅读(209) 评论(0) 推荐(0)