Codeforces Round #244 (Div. 2)D (后缀自动机)
(标号为0的节点一定是null节点,无论如何都不能拿来用,切记切记,以后不能再错了)
这题用后缀自动机的话,对后缀自动机的很多性质有足够深刻的理解。没想过后缀数组怎么做,因为不高兴敲。。。。
题意:给出两个长度均不超过5000的字符串s1,s2,求这两个串中,都只出现一次的最短公共子串。
解题思路:求的是公共子...
分类:
其他好文 时间:
2014-05-10 09:17:40
阅读次数:
313
/*@author
etangyushan*工作中很多时候会和文件名打交道,有时候只需要文件名称,就写了这么一个小程序*这个函数实现了把一个文件的绝对路径和后缀去除,只留下文件名的功能*
*/#include #include #include //找到最后的slash(/)int last_mar...
分类:
系统相关 时间:
2014-05-07 18:02:20
阅读次数:
344
题意:给两个字符串,求一个最短的子串。使得这个子串在两个字符串中出现的次数都等于1.出现的定义为:可以重叠的出现。
解法:后缀数组的应用。从小枚举长度。如果一个长度len合法的话:则一定存在这个样的sa[i]排名。sa[i]与s[i+1]的公共前缀长度大于等于len,且sa[i]与[i-1]的公共前缀长度小于len,同时sa[i+1]与[i+2]的公共前缀长度小于len,同时保证sa[i...
分类:
其他好文 时间:
2014-05-04 09:42:00
阅读次数:
275
题目来源:CF 427D Match & Catch
题意:给出2个字符串 求最短的连续的公共字符串 并且该字符串在原串中只出现一次
思路:把2个字符串合并起来求height 后缀数组height的应用
#include
#include
#include
using namespace std;
const int maxn = 100010;
char s[maxn];
int s...
分类:
其他好文 时间:
2014-05-04 09:32:45
阅读次数:
315
这题昨晚做了,刚开始看题的时候没想出好法子,然后就看D题了,一看D题发现是后缀数组,然后就把模板改了点就交了上去……不幸的是……WA了,然后重新看题,果然题目看漏了……不仅要用后缀数组和前缀数组求出公共子缀,还要是求最小的,而且在每个串里都不能重复的,这下就想了会不会了,然后看见大帝C过了,然后就重新回来看C了,看了会终于明天怎么做了。
C题意:给个图,然后每个点都有权值,求最小的花费及方案数;...
分类:
其他好文 时间:
2014-05-03 21:44:35
阅读次数:
260
D. Match & Catch
可以用各种方法做,字符串hash,后缀数组,dp,拓展kmp,字典树。。。
字符串hash(模板)
http://blog.csdn.net/gdujian0119/article/details/6777239
BKDR Hash Function :
// BKDR Hash Function
unsigned int BKDRHash(c...
分类:
其他好文 时间:
2014-05-03 21:20:47
阅读次数:
282
Codeforces Round #244 (Div. 2) 解题报告...
分类:
其他好文 时间:
2014-05-03 21:10:40
阅读次数:
314
一、后缀表达式求值
后缀表达式也叫逆波兰表达式,其求值过程可以用到栈来辅助存储。
假定待求值的后缀表达式为:6 5 2 3 + 8 * + 3 + *,则其求值过程如下:
(1)遍历表达式,遇到的数字首先放入栈中,依次读入6 5 2 3 此时栈如下所示:
(2)接着读到“+”,则从栈中弹出3和2,执行3+2,计算结果等于5,并将5压入到栈中。...
分类:
其他好文 时间:
2014-05-03 16:59:21
阅读次数:
309
以添加html后缀的文件的
映射为例:1.打开iis管理器,点击2.点击打开处理程序映射3.添加托管处理程序映射4.请求路径 *.html
类型:System.Web.UI.PageHandlerFactory 名称:Html-Integrate 确定5.添加处理脚本映射6.请求路径 *.ht...
分类:
Web程序 时间:
2014-05-02 14:07:40
阅读次数:
671