摘要: 参考博客:https://www.cnblogs.com/wenzhixin/p/9714760.html 预处理时间复杂度是O(nlogn),代码如下: 1 void init(const vector<int>& A) { 2 int n = A.size(); 3 for(int i = 0; 阅读全文
posted @ 2020-03-21 12:49 WA自动机~ 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://icpc.njust.edu.cn/Problem/Pku/3461/ 代码如下: 1 #include<cstdio> 2 #include<string.h> 3 using namespace std; 4 typedef unsigned int ui; 5 type 阅读全文
posted @ 2020-03-20 22:30 WA自动机~ 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://icpc.njust.edu.cn/Problem/Hdu/3294/ 回文长度如果是mxx,回文中心是id的话,在扩展串中(id-mxx+1,id+mxx-1)的这段中去除标记符号的部分就是回文串。还有个注意点就是错位循环赋值的问题。 代码如下: 1 #include<bi 阅读全文
posted @ 2020-03-18 23:20 WA自动机~ 阅读(110) 评论(0) 推荐(0) 编辑
摘要: Manacher算法较传统算法的优化之处在于它对每个回文中心寻找回文半径的时候并不是都从半径为1开始找的,而是利用前面已经完成的任务,寻找一个初始的开始搜索的半径大小,复杂度是线性的。 参考博客:https://www.cnblogs.com/z360/p/6375514.html 下面附上hdoj 阅读全文
posted @ 2020-03-18 16:22 WA自动机~ 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://icpc.njust.edu.cn/Problem/Hdu/3336/ 题意就是要求一个字符串的所有前缀在字符串中出现的次数之和,我们容易想到kmp中的next数组,next[i]=j,表示存在一个长度为j的前缀与长度为j的后缀相同,本题的结果就是要对每一位的next数组都向 阅读全文
posted @ 2020-03-18 14:18 WA自动机~ 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 拼接字符串即可解决移位的问题; 代码如下: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef unsigned int ui; 4 typedef long long ll; 5 typedef unsigned long long 阅读全文
posted @ 2020-03-18 12:56 WA自动机~ 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题目网址:http://icpc.njust.edu.cn/Problem/Hdu/2087/ 代码: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef unsigned int ui; 4 typedef long long ll 阅读全文
posted @ 2020-03-18 12:38 WA自动机~ 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1711/ 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef unsigned int ui; 4 typedef long long ll; 5 阅读全文
posted @ 2020-03-18 12:29 WA自动机~ 阅读(107) 评论(0) 推荐(0) 编辑
摘要: kmp字符串匹配原理参考博客:https://blog.csdn.net/bqw18744018044/article/details/90516750 代码如下:(写一遍模板) 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef u 阅读全文
posted @ 2020-03-18 12:06 WA自动机~ 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1026/ 题意就是一个迷宫,然后有些位置上有守卫,守卫有一个血量,要多花费血量的时间击败他,要求从(0,0)到(n-1,m-1)的最少用时。显然是用优先队列和bfs实现,因为求解图中每一层结点各自的时间不同,所以我 阅读全文
posted @ 2020-03-18 09:58 WA自动机~ 阅读(120) 评论(0) 推荐(0) 编辑